@Override protected ConcaveHullFactoryParameters getValueCopy(ConcaveHullFactoryParameters valueToCopy) { return new ConcaveHullFactoryParameters(valueToCopy); } }
public ConcaveHullFactoryParametersProperty(Object bean, String name) { super(bean, name, new ConcaveHullFactoryParameters()); }
public static void main(String[] args) throws IOException { PlanarRegionSegmentationRawDataImporter dataImporter = new PlanarRegionSegmentationRawDataImporter(new File("../../Data/20161210_185643_PlanarRegionSegmentation_Atlas_CB")); dataImporter.loadPlanarRegionSegmentationData(); List<PlanarRegionSegmentationRawData> regionsRawData = dataImporter.getPlanarRegionSegmentationRawData(); ConcaveHullFactoryParameters parameters = new ConcaveHullFactoryParameters(); while (true) { for (PlanarRegionSegmentationRawData rawData : regionsRawData) { List<Point2D> pointsInPlane = rawData.getPointCloudInPlane(); SimpleConcaveHullFactory.createConcaveHull(pointsInPlane, parameters); } } } }
public static ConcaveHullFactoryParameters parse(String parametersAsString) { parametersAsString = parametersAsString.replace(",", ""); Scanner scanner = new Scanner(parametersAsString); ConcaveHullFactoryParameters parameters = new ConcaveHullFactoryParameters(); parameters.setEdgeLengthThreshold(ScannerTools.readNextDouble(scanner, parameters.getEdgeLengthThreshold())); parameters.setRemoveAllTrianglesWithTwoBorderEdges(ScannerTools.readNextBoolean(scanner, parameters.doRemoveAllTrianglesWithTwoBorderEdges())); parameters.setAllowSplittingConcaveHull(ScannerTools.readNextBoolean(scanner, parameters.isSplittingConcaveHullAllowed())); parameters.setMaxNumberOfIterations(ScannerTools.readNextInt(scanner, parameters.getMaxNumberOfIterations())); scanner.close(); return parameters; } }
public REAPlanarRegionFeatureUpdater(NormalOcTree octree, Messager reaMessager) { this.octree = octree; this.reaMessager = reaMessager; isOcTreeEnabled = reaMessager.createInput(REAModuleAPI.OcTreeEnable, true); enableSegmentation = reaMessager.createInput(REAModuleAPI.PlanarRegionsSegmentationEnable, true); clearSegmentation = reaMessager.createInput(REAModuleAPI.PlanarRegionsSegmentationClear, false); enablePolygonizer = reaMessager.createInput(REAModuleAPI.PlanarRegionsPolygonizerEnable, true); clearPolygonizer = reaMessager.createInput(REAModuleAPI.PlanarRegionsPolygonizerClear, false); enableIntersectionCalulator = reaMessager.createInput(REAModuleAPI.PlanarRegionsIntersectionEnable, false); planarRegionSegmentationParameters = reaMessager.createInput(REAModuleAPI.PlanarRegionsSegmentationParameters, new PlanarRegionSegmentationParameters()); concaveHullFactoryParameters = reaMessager.createInput(REAModuleAPI.PlanarRegionsConcaveHullParameters, new ConcaveHullFactoryParameters()); polygonizerParameters = reaMessager.createInput(REAModuleAPI.PlanarRegionsPolygonizerParameters, new PolygonizerParameters()); intersectionEstimationParameters = reaMessager.createInput(REAModuleAPI.PlanarRegionsIntersectionParameters, new IntersectionEstimationParameters()); reaMessager.registerTopicListener(REAModuleAPI.RequestEntireModuleState, (messageContent) -> sendCurrentState()); }