span8
span4
span8
span4
In order to merge (union) multiple solids generated from one single input, I searched on the internet for a solution and found an idea of using the Sampler transformer (with Sampling Rate = 1 and Sampling Type = First N Features) + the CSGBuilder, in a custom transformer with a loop (merging loop), but the Sampler does not work correctly in a recursive loop (features are not sampled in a loop), so the loop become infinite!..
If there is any idea to deal with that issue, I will appreaciate it.
Hi, Thanks for the reply! but that transformer doesn't work for me, and neither it rejects!
Yes, the solids overlap each other and are adjascent too, so I will need to merge them in one single solid.
Thanks for the reply, I tried your manipulation without any succes, in my case the GeometryCoercer doesn't route any input feature to the Untouched port, but it indicates that the problem is in the Clip part with a warning : "SolidDissolver_Clipper_Raster(RasterClippingFactory): No valid clipper feature(s) received"..
Sounds strange. When you sent the solids to the GeometryCoercer, it said "Cannot coerce from IFMEBRepSolid to fme_brep_solid". I therfore supposed your source solids are originally IFMEBrepSolid features.
However, if you use the SolidDissolver, all the solids can be coerced to fme_brep_solid with the internal GeometryCoercer, but the aggregate of them will be rejected by the Clipper.
It's necessary to investigate the geometry data structure in more detail. Could you post screenshots of Feature Information pane of Data Inspector for [1] a typical source solid feature and [2] the feature output from the Aggregator within the SolidDissolver?
The section of geometry type i.e. IFME*** is most important. e.g.
hmm, I think it should work theoretically...
Does it work if you reduced the number of input solids?
Hi @evaniko, it seems that there are solids belonging to the IFMEBrepSolid class in your source data, and the SolidDissolver doesn't support solids of the class. However, I think you can edit the implementation of the transformer so that it can treat IFMEBrepSolid. It's simple.
That's it.
The GeometryCoercer (Geometry Type: fme_brep_solid) routes the input feature to the Untouched port if it was originally an IFMEBrepSolid geometry.
Note: The GeometryCoercer cannot coerce a MultiSolid feature or a homogeneous Aggregate feature consisting of solids to fme_brep_solid. If your source feature could be a MultiSolid or an Aggregate, consider decomposing them into individual solid features with the Deaggregator before inputting them to the SolidDissolver.
© 2019 Safe Software Inc | Legal