4#include <NDEVR/DesignObjectLookup.h>
10 struct LineOfSightArgs
12 Vertex<3, fltp08> origin = Vertex<3, fltp08>(0.0);
13 Bounds<1, fltp08> distance_bounds = Bounds<1, fltp08>(0.0, 500.0);
14 Bounds<2, Angle<sint04>> bounds = Bounds<2, Angle<sint04>>(Vector<2, Angle<sint04>>(Angle(0)), Vector<2, Angle<sint04>>(Angle<sint04>(DEGREES, 360.0), Angle<sint04>(DEGREES, 180.0)));
15 Vector<2, Angle<sint04>> separation = Vector<2, Angle<sint04>>(Angle<sint04>(DEGREES, 0.5));
16 Buffer<Model> points_to_intersect;
17 Buffer<Model> lines_to_intersect;
18 Buffer<Model> meshes_to_intersect;
19 DesignObjectLookup* lookup =
nullptr;
20 ProgressInfo* log =
nullptr;
32 LineOfSight(
const Model& parent);
33 static const char* TypeName()
35 return "line_of_sight";
37 LineOfSightArgs currentArgs()
const;
38 Model losLayer()
const;
39 void createLineOfSite(LineOfSightArgs& args);
41 bool intersects(SelectionInfo& info,
const LineOfSightArgs& args);
42 void intersectMeshes(LineOfSightArgs& args);