internal RectFileWriter(RectilinearEdgeRouterWrapper router, RectilinearVerifier verifier, Dictionary<Port, Shape> freeRelativePortToShapeMap = null, bool writeGraph = true, bool writePaths = true, bool writeScanSegments = true, bool writePaddedObstacles = true, bool writeConvexHulls = true, bool useFreePortsForObstaclePorts = false ) { this.router = router; this.verifier = verifier; this.freeRelativePortToShapeMap = freeRelativePortToShapeMap; this.writeGraph = writeGraph; this.writePaths = writePaths; this.writeScanSegments = writeScanSegments; this.writePaddedObstacles = writePaddedObstacles; this.writeConvexHulls = writeConvexHulls; this.useFreePortsForObstaclesPorts = useFreePortsForObstaclePorts; this.useSparseVisibilityGraph = router.UseSparseVisibilityGraph; this.useObstacleRectangles = router.UseObstacleRectangles; this.bendPenalty = router.BendPenaltyAsAPercentageOfDistance; this.limitPortVisibilitySpliceToEndpointBoundingBox = router.LimitPortVisibilitySpliceToEndpointBoundingBox; // Don't leave these null - they'll be overwritten by caller in most cases. this.RandomObstacleArg = RectFileStrings.NullStr; this.RandomObstacleDensity = RectFileStrings.NullStr; }
internal RectFileWriter(RectilinearEdgeRouterWrapper router, RectilinearVerifier verifier, Dictionary <Port, Shape> freeRelativePortToShapeMap = null, bool writeGraph = true, bool writePaths = true, bool writeScanSegments = true, bool writePaddedObstacles = true, bool writeConvexHulls = true, bool useFreePortsForObstaclePorts = false ) { this.router = router; this.verifier = verifier; this.freeRelativePortToShapeMap = freeRelativePortToShapeMap; this.writeGraph = writeGraph; this.writePaths = writePaths; this.writeScanSegments = writeScanSegments; this.writePaddedObstacles = writePaddedObstacles; this.writeConvexHulls = writeConvexHulls; this.useFreePortsForObstaclesPorts = useFreePortsForObstaclePorts; this.useSparseVisibilityGraph = router.UseSparseVisibilityGraph; this.useObstacleRectangles = router.UseObstacleRectangles; this.bendPenalty = router.BendPenaltyAsAPercentageOfDistance; this.limitPortVisibilitySpliceToEndpointBoundingBox = router.LimitPortVisibilitySpliceToEndpointBoundingBox; // Don't leave these null - they'll be overwritten by caller in most cases. this.RandomObstacleArg = RectFileStrings.NullStr; this.RandomObstacleDensity = RectFileStrings.NullStr; }