Skip to content

Commit d21e2ba

Browse files
committed
Add override specifier: pdf subclasses
1 parent 89d6640 commit d21e2ba

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

books/RayTracingTheRestOfYourLife.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1640,12 +1640,12 @@
16401640
public:
16411641
cosine_pdf(const vec3& w) { uvw.build_from_w(w); }
16421642

1643-
virtual double value(const vec3& direction) const {
1643+
virtual double value(const vec3& direction) const override {
16441644
auto cosine = dot(unit_vector(direction), uvw.w());
16451645
return (cosine <= 0) ? 0 : cosine/pi;
16461646
}
16471647

1648-
virtual vec3 generate() const {
1648+
virtual vec3 generate() const override {
16491649
return uvw.local(random_cosine_direction());
16501650
}
16511651

@@ -1715,11 +1715,11 @@
17151715
public:
17161716
hittable_pdf(shared_ptr<hittable> p, const point3& origin) : ptr(p), o(origin) {}
17171717

1718-
virtual double value(const vec3& direction) const {
1718+
virtual double value(const vec3& direction) const override {
17191719
return ptr->pdf_value(o, direction);
17201720
}
17211721

1722-
virtual vec3 generate() const {
1722+
virtual vec3 generate() const override {
17231723
return ptr->random(o);
17241724
}
17251725

@@ -1849,11 +1849,11 @@
18491849
p[1] = p1;
18501850
}
18511851

1852-
virtual double value(const vec3& direction) const {
1852+
virtual double value(const vec3& direction) const override {
18531853
return 0.5 * p[0]->value(direction) + 0.5 *p[1]->value(direction);
18541854
}
18551855

1856-
virtual vec3 generate() const {
1856+
virtual vec3 generate() const override {
18571857
if (random_double() < 0.5)
18581858
return p[0]->generate();
18591859
else

src/TheRestOfYourLife/pdf.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ class cosine_pdf : public pdf {
5555
public:
5656
cosine_pdf(const vec3& w) { uvw.build_from_w(w); }
5757

58-
virtual double value(const vec3& direction) const {
58+
virtual double value(const vec3& direction) const override {
5959
auto cosine = dot(unit_vector(direction), uvw.w());
6060
return (cosine <= 0) ? 0 : cosine/pi;
6161
}
6262

63-
virtual vec3 generate() const {
63+
virtual vec3 generate() const override {
6464
return uvw.local(random_cosine_direction());
6565
}
6666

@@ -73,11 +73,11 @@ class hittable_pdf : public pdf {
7373
public:
7474
hittable_pdf(shared_ptr<hittable> p, const point3& origin) : ptr(p), o(origin) {}
7575

76-
virtual double value(const vec3& direction) const {
76+
virtual double value(const vec3& direction) const override {
7777
return ptr->pdf_value(o, direction);
7878
}
7979

80-
virtual vec3 generate() const {
80+
virtual vec3 generate() const override {
8181
return ptr->random(o);
8282
}
8383

@@ -94,11 +94,11 @@ class mixture_pdf : public pdf {
9494
p[1] = p1;
9595
}
9696

97-
virtual double value(const vec3& direction) const {
97+
virtual double value(const vec3& direction) const override {
9898
return 0.5 * p[0]->value(direction) + 0.5 *p[1]->value(direction);
9999
}
100100

101-
virtual vec3 generate() const {
101+
virtual vec3 generate() const override {
102102
if (random_double() < 0.5)
103103
return p[0]->generate();
104104
else

0 commit comments

Comments
 (0)