gpuray_glsl

view src/cone.h @ 3:297dbc5080c4

cone intersection
author John Tsiombikas <nuclear@member.fsf.org>
date Sun, 09 Nov 2014 20:13:33 +0200
parents 6e3a4daf3159
children
line source
1 /*
2 Simple introductory ray tracer
3 Copyright (C) 2012 John Tsiombikas <nuclear@member.fsf.org>
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 #ifndef CONE_H_
19 #define CONE_H_
21 #include "vmath/vmath.h"
22 #include "object.h"
24 class Cone : public Object {
25 public:
26 float angle;
27 float ymin, ymax; /* in local space */
29 Cone();
30 explicit Cone(float angle, float ymin = 0.0f, float ymax = 1.0f);
32 bool intersect(const Ray &ray, HitPoint *pt) const;
33 };
35 #endif /* CONE_H_ */