Can fme creat a hemisphere like this below? Thanks a lot.
Page 1 / 1
HI @liujisheng, assuming you are using FME 2018, this is a possible way.
- Create the center point (x, y, z) of desired hemisphere.
- Bufferer (Buffer Type: Solid): Transform the point to a solid = approximate sphere. You can control accuracy (smoothness) of the sphere through the Edge Resolution parameter.
- GeometryPartExtractor (Geometyr XQuery: This part | Geometry Type | = | IFMEFace): Decompose the solid into individual faces.
- BoundsExtractor: Calculate bounds of each face.
- Tester: Filter out faces whose zmax is equal to or less than z of the center point.
- Aggregator: Aggregate the remnant faces.
- GeometryCoercer (Geometry Type: fme_composite_surface): Transform the aggregate into a composite surface = approximate hemisphere.
Note that the resulting shape would not be geometrically equal to your example, as you can see in this screenshot. If you want to create exact same shape, you might need to write a script with geometrical algorithm and FME Objects API.
HI @liujisheng, assuming you are using FME 2018, this is a possible way.
- Create the center point (x, y, z) of desired hemisphere.
- Bufferer (Buffer Type: Solid): Transform the point to a solid = approximate sphere. You can control accuracy (smoothness) of the sphere through the Edge Resolution parameter.
- GeometryPartExtractor (Geometyr XQuery: This part | Geometry Type | = | IFMEFace): Decompose the solid into individual faces.
- BoundsExtractor: Calculate bounds of each face.
- Tester: Filter out faces whose zmax is equal to or less than z of the center point.
- Aggregator: Aggregate the remnant faces.
- GeometryCoercer (Geometry Type: fme_composite_surface): Transform the aggregate into a composite surface = approximate hemisphere.
Note that the resulting shape would not be geometrically equal to your example, as you can see in this screenshot. If you want to create exact same shape, you might need to write a script with geometrical algorithm and FME Objects API.