Question

PointCloudFilter expression for Componenttype = string


Badge +1

Hi there,

 

is it possible to use the pointcloud filter transformer with a a componenttype = string? I have a pointcloud (csv) with a component (RCx) that contains numeric values but there are also "N/A" string values (Nodata) in this component. In the pointcloud filter a made the expression "@Component(RCx) == N/A" but its not working. Has anyone an idea how to filter thes Nodata values with a pointcloudfilter expression?


3 replies

Userlevel 1
Badge +11

Hi @poppendamme,

It doesn't look like there's an easy way of doing this right now (please correct me if I'm wrong if anyone has any other ideas (: ). I'm not 100% sure this will work, but perhaps give the PointCloudSplitter a try. If your desired values are numeric, you can specify the range of your real data and it may split out the N/A values.

 

 

Otherwise, I've posted an Idea here that you can upvote and add your use case to inform development of your interest. There's an internal enhancement request (FMEENGINE-37166) but it is currently unplanned as there hasn't been much interest in it yet. Hopefully that helps a bit!
Badge +1

hi @jovitaatsafe thank you for your answer!

I treid the PointCloudSplitter but it seems its not working, the Pointcloud reader generate the RCx as a DataType = string (because of the value "N/A"), in that case the PointCloudSplitter can't handle ranges of numeric values. When I change the DataType into real32 the reader doesn't read the lines with te "N/A" values ('RCx' is not a valid value for component 'RCx' which has type 'Real32').

For now I made a workspace that use a pointcloudcreator and the pointcloudmerger to isolate the points with "N/A" values, in the same workspace the "N/A" values will be changed into "9999" values (see the attached picture). It seems this works and when I change some settings into published parameters its also easy usable for other NoData value changes.

 

Userlevel 1
Badge +11

hi @jovitaatsafe thank you for your answer!

I treid the PointCloudSplitter but it seems its not working, the Pointcloud reader generate the RCx as a DataType = string (because of the value "N/A"), in that case the PointCloudSplitter can't handle ranges of numeric values. When I change the DataType into real32 the reader doesn't read the lines with te "N/A" values ('RCx' is not a valid value for component 'RCx' which has type 'Real32').

For now I made a workspace that use a pointcloudcreator and the pointcloudmerger to isolate the points with "N/A" values, in the same workspace the "N/A" values will be changed into "9999" values (see the attached picture). It seems this works and when I change some settings into published parameters its also easy usable for other NoData value changes.

 

Yours is a much better idea using the PointCloudCreator and PointCloudMerger! I'm glad you've found a workaround!

Reply