projects
/
MicroTrace.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed Box::Extend(Vec3f&)
[MicroTrace.git]
/
Ray.cxx
diff --git
a/Ray.cxx
b/Ray.cxx
index
584db26
..
84617d1
100644
(file)
--- a/
Ray.cxx
+++ b/
Ray.cxx
@@
-2,23
+2,24
@@
#include "Ray.hxx"
#include "Ray.hxx"
-#define MAX_RECURSION_DEPTH 5
-
Ray::Ray()
: m_org(Vec3f()),
m_dir(Vec3f()),
Ray::Ray()
: m_org(Vec3f()),
m_dir(Vec3f()),
- m_hit(0),
- m_level(MAX_RECURSION_DEPTH)
+ m_level(0),
+ m_density(1.0),
+ m_hit(0)
{
m_t = std::numeric_limits<float>::max();
}
{
m_t = std::numeric_limits<float>::max();
}
-Ray::Ray(const Vec3f& org,
- const Vec3f& dir)
+Ray::Ray(const Vec3f& org,
+ const Vec3f& dir,
+ unsigned int recursion_level)
: m_org(org),
m_dir(dir),
: m_org(org),
m_dir(dir),
- m_hit(0),
- m_level(MAX_RECURSION_DEPTH)
+ m_level(recursion_level),
+ m_density(1.0),
+ m_hit(0)
{
m_t = std::numeric_limits<float>::max();
}
{
m_t = std::numeric_limits<float>::max();
}
@@
-34,6
+35,7
@@
Ray::Ray(const Ray& r)
m_t = r.m_t;
m_hit = r.m_hit;
m_level = r.m_level;
m_t = r.m_t;
m_hit = r.m_hit;
m_level = r.m_level;
+ m_density = r.m_density;
}
Ray&
}
Ray&
@@
-45,6
+47,8
@@
Ray::operator=(const Ray& r)
m_dir = r.m_dir;
m_t = r.m_t;
m_hit = r.m_hit;
m_dir = r.m_dir;
m_t = r.m_t;
m_hit = r.m_hit;
+ m_level = r.m_level;
+ m_density = r.m_density;
}
return *this;
}
}
return *this;
}
@@
-85,19
+89,19
@@
Ray::setT(float t)
m_t = t;
}
m_t = t;
}
-void
-Ray::setHit(Primitive * p)
-{
- m_hit = p;
-}
-
Primitive*
Ray::hit()
{
return m_hit;
}
Primitive*
Ray::hit()
{
return m_hit;
}
-unsigned int
+void
+Ray::setHit(Primitive* p)
+{
+ m_hit = p;
+}
+
+unsigned int
Ray::recursionDepth() const
{
return m_level;
Ray::recursionDepth() const
{
return m_level;
@@
-108,3
+112,15
@@
Ray::setRecursionDepth(unsigned int i)
{
m_level = i;
}
{
m_level = i;
}
+
+float
+Ray::indexOfRefraction() const
+{
+ return m_density;
+}
+
+void
+Ray::setIndexOfRefraction(float d)
+{
+ m_density = d;
+}
This page took
0.023734 seconds
and
4
git commands to generate.