Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
oxyflame_rendering_tools
Manage
Activity
Members
Labels
Plan
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
LuFG VR VIS
VR-Group
oxyflame_rendering_tools
Commits
cbb4f55e
Commit
cbb4f55e
authored
4 years ago
by
Ali Can Demiralp
Browse files
Options
Downloads
Patches
Plain Diff
Geometry and volume are optional.
parent
9675f287
No related branches found
No related tags found
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
offline_ray_tracer/include/settings.hpp
+10
-8
10 additions, 8 deletions
offline_ray_tracer/include/settings.hpp
offline_ray_tracer/source/main.cpp
+21
-13
21 additions, 13 deletions
offline_ray_tracer/source/main.cpp
with
31 additions
and
21 deletions
offline_ray_tracer/include/settings.hpp
+
10
−
8
View file @
cbb4f55e
...
@@ -40,7 +40,9 @@ struct settings
...
@@ -40,7 +40,9 @@ struct settings
if
(
iteratee
.
isMember
(
"volume"
))
entry
.
volume
=
iteratee
[
"volume"
].
asString
();
if
(
iteratee
.
isMember
(
"volume"
))
entry
.
volume
=
iteratee
[
"volume"
].
asString
();
}
}
if
(
root
.
isMember
(
"transfer_function"
))
transfer_function
=
root
[
"transfer_function"
]
.
asString
();
transfer_function
=
root
[
"transfer_function"
]
.
asString
();
time_scale
=
root
[
"time_scale"
]
.
asFloat
();
time_scale
=
root
[
"time_scale"
]
.
asFloat
();
loop
=
root
[
"loop"
]
.
asBool
();
loop
=
root
[
"loop"
]
.
asBool
();
image_size
=
{
root
[
"image_size"
][
0
].
asUInt
(),
image_size
=
{
root
[
"image_size"
][
0
].
asUInt
(),
...
@@ -74,7 +76,7 @@ struct settings
...
@@ -74,7 +76,7 @@ struct settings
// Input settings.
// Input settings.
std
::
vector
<
data_filepath
>
data_filepaths
=
{};
std
::
vector
<
data_filepath
>
data_filepaths
=
{};
std
::
string
transfer_function
=
""
;
std
::
string
transfer_function
=
std
::
string
()
;
float
time_scale
=
1000.0f
;
float
time_scale
=
1000.0f
;
bool
loop
=
true
;
bool
loop
=
true
;
...
...
This diff is collapsed.
Click to expand it.
offline_ray_tracer/source/main.cpp
+
21
−
13
View file @
cbb4f55e
...
@@ -26,7 +26,6 @@ std::int32_t main(std::int32_t argc, char** argv)
...
@@ -26,7 +26,6 @@ std::int32_t main(std::int32_t argc, char** argv)
{
{
std
::
cout
<<
"Parsing settings.
\n
"
;
std
::
cout
<<
"Parsing settings.
\n
"
;
auto
settings
=
rt
::
settings
(
argv
[
1
]);
auto
settings
=
rt
::
settings
(
argv
[
1
]);
auto
transfer_function
=
rt
::
transfer_function
(
settings
.
transfer_function
);
std
::
cout
<<
"Setting up renderer.
\n
"
;
std
::
cout
<<
"Setting up renderer.
\n
"
;
auto
renderer
=
vtkSmartPointer
<
vtkRenderer
>
::
New
();
auto
renderer
=
vtkSmartPointer
<
vtkRenderer
>
::
New
();
...
@@ -52,17 +51,26 @@ std::int32_t main(std::int32_t argc, char** argv)
...
@@ -52,17 +51,26 @@ std::int32_t main(std::int32_t argc, char** argv)
interpolator
->
AddCamera
(
key_frame
.
time
,
camera
);
interpolator
->
AddCamera
(
key_frame
.
time
,
camera
);
}
}
std
::
cout
<<
"Setting up
actors and volumes
.
\n
"
;
std
::
cout
<<
"Setting up
geometry
.
\n
"
;
auto
pd_mapper
=
vtkSmartPointer
<
vtkPolyDataMapper
>::
New
();
auto
pd_mapper
=
vtkSmartPointer
<
vtkPolyDataMapper
>::
New
();
auto
ug_mapper
=
vtkSmartPointer
<
vtkUnstructuredGridVolumeRayCastMapper
>::
New
();
auto
pd_actor
=
vtkSmartPointer
<
vtkActor
>
::
New
();
auto
pd_actor
=
vtkSmartPointer
<
vtkActor
>
::
New
();
auto
ug_volume
=
vtkSmartPointer
<
vtkVolume
>
::
New
();
if
(
!
settings
.
data_filepaths
[
0
].
geometry
.
empty
())
{
pd_actor
->
SetMapper
(
pd_mapper
);
pd_actor
->
SetMapper
(
pd_mapper
);
ug_volume
->
SetMapper
(
ug_mapper
);
renderer
->
AddActor
(
pd_actor
);
renderer
->
AddActor
(
pd_actor
);
}
std
::
cout
<<
"Setting up volume.
\n
"
;
auto
ug_mapper
=
vtkSmartPointer
<
vtkUnstructuredGridVolumeRayCastMapper
>::
New
();
auto
ug_volume
=
vtkSmartPointer
<
vtkVolume
>
::
New
();
if
(
!
settings
.
data_filepaths
[
0
].
volume
.
empty
())
{
auto
tf
=
rt
::
transfer_function
(
settings
.
transfer_function
);
ug_volume
->
GetProperty
()
->
SetScalarOpacity
(
tf
.
opacity_function
);
ug_volume
->
GetProperty
()
->
SetColor
(
tf
.
color_function
);
ug_volume
->
SetMapper
(
ug_mapper
);
renderer
->
AddVolume
(
ug_volume
);
renderer
->
AddVolume
(
ug_volume
);
ug_volume
->
GetProperty
()
->
SetScalarOpacity
(
transfer_function
.
opacity_function
);
}
ug_volume
->
GetProperty
()
->
SetColor
(
transfer_function
.
color_function
);
std
::
cout
<<
"Setting up video writer.
\n
"
;
std
::
cout
<<
"Setting up video writer.
\n
"
;
auto
window_to_image
=
vtkSmartPointer
<
vtkWindowToImageFilter
>::
New
();
auto
window_to_image
=
vtkSmartPointer
<
vtkWindowToImageFilter
>::
New
();
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment