Class MirrorReceiversCompute


  • public class MirrorReceiversCompute
    extends Object
    • Field Detail

      • DEFAULT_MIRROR_RECEIVER_CAPACITY

        public static final int DEFAULT_MIRROR_RECEIVER_CAPACITY
        See Also:
        Constant Field Values
    • Constructor Detail

      • MirrorReceiversCompute

        public MirrorReceiversCompute​(List<Wall> buildWalls,
                                      org.locationtech.jts.geom.Coordinate receiverCoordinates,
                                      int reflectionOrder,
                                      double maximumPropagationDistance,
                                      double maximumDistanceFromWall)
        Generate all image receivers from the provided list of walls
        Parameters:
        buildWalls -
        receiverCoordinates -
        reflectionOrder -
    • Method Detail

      • createWallReflectionVisibilityCone

        public static org.locationtech.jts.geom.Polygon createWallReflectionVisibilityCone​(org.locationtech.jts.geom.Coordinate receiverImage,
                                                                                           org.locationtech.jts.geom.LineSegment wall,
                                                                                           double maximumPropagationDistance,
                                                                                           double maximumDistanceFromWall)
      • wallPointTest

        public static boolean wallPointTest​(org.locationtech.jts.geom.LineSegment wall1,
                                            org.locationtech.jts.geom.Coordinate pt)
        Occlusion test between one wall and a viewer. Simple Feature Access (ISO 19125-1) say that: On polygon exterior ring are CCW, and interior rings are CW.
        Parameters:
        wall1 - Wall segment
        pt - Observer
        Returns:
        True if the wall is oriented to the point, false if the wall Occlusion Culling (transparent)
      • getMirrorReceiverCapacity

        public int getMirrorReceiverCapacity()
      • setMirrorReceiverCapacity

        public void setMirrorReceiverCapacity​(int mirrorReceiverCapacity)
      • exportVisibility

        public void exportVisibility​(StringBuilder sb,
                                     double maxPropagationDistance,
                                     double maxPropagationDistanceFromWall,
                                     int t,
                                     List<MirrorReceiver> MirrorReceiverList,
                                     boolean includeHeader)
      • findCloseMirrorReceivers

        public List<MirrorReceiver> findCloseMirrorReceivers​(org.locationtech.jts.geom.Coordinate sourcePosition)