Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
ITAGeo
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Requirements
Requirements
List
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Analytics
Analytics
Insights
Issue
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
Institute of Technical Acoustics (ITA)
ITAGeo
Commits
7a62cf58
Commit
7a62cf58
authored
Jul 18, 2019
by
Dipl.-Ing. Jonas Stienen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Spending a polygon id for reflection and diffraction anchors
parent
ec3ba8ad
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
411 additions
and
390 deletions
+411
-390
include/ITAGeo/Base.h
include/ITAGeo/Base.h
+7
-1
src/ITAGeo/Base.cpp
src/ITAGeo/Base.cpp
+403
-389
tests/PropagationPathsTest.cpp
tests/PropagationPathsTest.cpp
+1
-0
No files found.
include/ITAGeo/Base.h
View file @
7a62cf58
...
...
@@ -312,11 +312,14 @@ namespace ITAGeo
{
iAnchorType
=
CPropagationAnchor
::
SPECULAR_REFLECTION
;
v3FaceNormal
.
SetToZeroVector
();
iPolygonID
=
-
1
;
};
inline
CSpecularReflection
(
const
VistaVector3D
&
v3SpecularReflectionPoint
)
:
CPropagationAnchor
(
v3SpecularReflectionPoint
)
{
iAnchorType
=
CPropagationAnchor
::
SPECULAR_REFLECTION
;
iPolygonID
=
-
1
;
};
inline
virtual
~
CSpecularReflection
()
{};
...
...
@@ -329,13 +332,14 @@ namespace ITAGeo
void
LoadFromJSONString
(
const
std
::
string
&
sContent
,
std
::
shared_ptr
<
CResourceManager
>
pResourceManager
=
nullptr
);
VistaVector3D
v3FaceNormal
;
//!< Face normal of reflection plane
int
iPolygonID
;
//!< Identifier of polygon in mesh
std
::
shared_ptr
<
Material
::
IMaterial
>
pMaterial
;
//!< Acoustic material connection, i.e. absorption coefficient
};
//! Geometrical propagation anchor of the detection point inside the receiver's detection volume
/**
* A detection point
* A detection point
(used for sphere receivers in ray tracing algorithms)
*/
class
ITA_GEO_API
CDetectionPoint
:
public
CPropagationAnchor
// public CPropagationAnchor
{
...
...
@@ -521,6 +525,8 @@ namespace ITAGeo
VistaVector3D
v3VertextEnd
;
VistaVector3D
v3MainWedgeFaceNormal
;
VistaVector3D
v3OppositeWedgeFaceNormal
;
int
iMainWedgeFaceID
;
int
iOppositeWedgeFaceID
;
CITADiffractionWedgeApertureBase
();
virtual
inline
~
CITADiffractionWedgeApertureBase
()
{};
...
...
src/ITAGeo/Base.cpp
View file @
7a62cf58
This diff is collapsed.
Click to expand it.
tests/PropagationPathsTest.cpp
View file @
7a62cf58
...
...
@@ -13,6 +13,7 @@ int main( int, char** )
auto
pReflection
=
make_shared
<
CSpecularReflection
>
();
pReflection
->
v3InteractionPoint
.
SetValues
(
-
0.5
f
,
-
1.0
f
,
-
2.0
f
);
pReflection
->
v3FaceNormal
.
SetValues
(
1.
f
,
0.
f
,
0.
f
,
0.
f
);
pReflection
->
iPolygonID
=
0
;
auto
pReceiver
=
make_shared
<
CSensor
>
();
pReceiver
->
v3InteractionPoint
.
SetValues
(
-
1.0
f
,
-
2.0
f
,
-
3.0
f
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment