ProRaster Help – LAS Query Editor
On this page, you will find general help for the ProRaster product family, including links to documentation, instructional videos, and training videos.
Previous Topic: The Data Conditioning Editor
Next Topic: The Projection Explorer
Back to: ProRaster Help
Back to: ProRaster
Go to: ProRaster Essential help page, ProRaster Premium help page, ProRaster Scientific help page.
The ProRaster User Guide is available for download as a PDF.
Using the LAS Query Editor Dialog
The LAS Query Editor enables you to create and edit reusable global resources called LAS Queries. Access the LAS Query Editor by hitting the “Edit LAS Queries…” button on the main dialog to the right of the other global resource editor buttons.
A LAS Query can be used when you are consuming an MRP format point cloud file containing LiDAR pulse-return data. At present, that means you can use a LAS query when –
- displaying point cloud files using either Point LUT or Point RGB layers in the rendering algorithm
- gridding point cloud files using a virtual gridding operation.
A LAS query operates on LiDAR point cloud data that is correctly ordered by pulse and then by return. When you import LIDAR data (from LAS or LAZ files) into an MRP, it is your responsibility to make sure that the data in the source files is properly ordered. ProRaster does not attempt to validate or impose this ordering, but when importing LAS/LAZ files you may occasionally notice a message indicating that fewer returns were input than expected. This indicates that a pulse which is recorded as having N returns was found to have fewer than N returns. It may point to an ordering issue, or it may simply mean that some returns have been excised prior to delivery.
Like all resource editors, you can Add new items or Clone existing items, as well as Delete an item or Delete all items. When you add a new item, you must give it a unique name (indicated by the green tick or red cross to the right of the editable name field). When you hit OK to exit the editor your changes are saved to file and can be accessed in all instances of ProRaster thereafter.
ProRaster includes a set of system defined LAS Queries. You cannot delete or modify these queries. If they do not meet your requirements, you can define you own query or clone and edit any existing query.
A LAS query will apply rules to select none, one, or multiple returns from each pulse. You need to define three groups of filters – the Query Rule, The Flag Filter, and the Range Filter. For a return to be passed by the query, it must pass all the tests in each group. Start by defining the Query Rule.
Query Rule and Return Rule
Select All Returns
All returns in every pulse are selected for further consideration. Any returns that pass the Flag and Range filter tests will be emitted.
Select By Return Number
Only some returns in each pulse are considered, based on their return number. The return numbers that will be considered are determined by the Return Rule.
All Returns per Pulse
All returns in every pulse are selected for further consideration.
Numbered Returns per Pulse
List the return numbers you want selected for further consideration. Type them in the entry field, delimited by commas. Return numbers start at 1.
NOT Numbered Returns per Pulse
List the return numbers you do not want selected. All others will be selected for further consideration. Type them in the entry field, delimited by commas. Return numbers start at 1.
First Return per Pulse
The first return (regardless of return number it is) is selected for further consideration.
Last Return per Pulse
The last return (regardless of return number it is) is selected for further consideration.
First N-Returns per Pulse
The first N returns in a pulse (or fewer if there are less than N returns in the pulse), regardless of their return numbers, are selected for further consideration. In the Return Count entry field, enter a value for N.
Last N-Returns per Pulse
The last N returns in a pulse (or fewer if there are less than N returns in the pulse), regardless of their return numbers, are selected for further consideration. In the Return Count entry field, enter a value for N.
First N-Returns of P-Returns per Pulse
The first N returns in a pulse that contains P returns in total, regardless of their return numbers, are selected for further consideration. In the Return Count entry field, enter a value for N. In the Pulse Return Count entry field, enter a value for P.
Last N-Returns of P-Returns per Pulse
The last N returns in a pulse that contains P returns in total, regardless of their return numbers, are selected for further consideration. In the Return Count entry field, enter a value for N. In the Pulse Return Count entry field, enter a value for P.
First Return from a Complete Pulse
The first return if, and only if, the pulse contains the expected number of returns. The number of returns in each pulse is a value that is imported from the LAS file.
Last Return from a Complete Pulse
The last return if, and only if, the pulse contains the expected number of returns. The number of returns in each pulse is a value that is imported from the LAS file.
Select By Intensity and Return Number
Only some returns in each pulse are considered, based on their Intensity and Return number. Define the Return Rule and the Intensity Rule. The query firstly applies the Return Rule to select returns. It then selects the one return from that group that has either the Highest or Lowest Intensity value, depending on the chosen Intensity Rule.
Select By Classification and Return Number
Only some returns in each pulse are considered, based on their Classification and Return number. Define the Return Rule and a list of classes that the Classification value in the return will be matched against. The query firstly applies the Return Rule to select returns. Of that subset of returns, any that have a Classification value that is listed will be selected for further consideration. Enter the class values as a comma delimited list in any order. You can use the name for each class, or you can use a number. A drop list of class names is provided so you can add classes by name easily. Valid numeric class values range from 0 to 255.
Select By NOT Classification and Return Number
Only some returns in each pulse are considered, based on their Classification and Return number. Define the Return Rule and a list of classes that the Classification value in the return will be matched against. The query firstly applies the Return Rule to select returns. Of that subset of returns, any that DO NOT have a Classification value that is listed will be selected for further consideration. Enter the class values as a comma delimited list in any order. You can use the name for each class, or you can use a number. A drop list of class names is provided so you can add classes by name easily. Valid numeric class values range from 0 to 255.
Select By Classification and Intensity
Returns are firstly filtered to those that have a Classification matching one of the classes supplied in the list. Of those returns with a matching class, the return with either the Highest or Lowest Intensity value is returned. Define the Intensity Rule and a list of classes that the Classification value in the return will be matched against. Enter the class values as a comma delimited list in any order. You can use the name for each class, or you can use a number. A drop list of class names is provided so you can add classes by name easily. Valid numeric class values range from 0 to 255.
Select By NOT Classification and Intensity
Returns are firstly filtered to those that have a Classification NOT matching one of the classes supplied in the list. Of those returns with a non-matching class, the return with either the Highest or Lowest Intensity value is returned. Define the Intensity Rule and a list of classes that the Classification value in the return will be matched against. Enter the class values as a comma delimited list in any order. You can use the name for each class, or you can use a number. A drop list of class names is provided so you can add classes by name easily. Valid numeric class values range from 0 to 255.
Flag Filters
If a return passes the Query rule it is then tested against the Flag filters. A return will pass if it passes each of the five tests. These are for Synthetic, Key Point, Overlap, Line Edge, and Withheld flags. In other words, if a filter test is not checked and the return has that corresponding flag set, then it will not pass.
Range Filters
The Range Filters further test the return by making sure that data values in the return lie within a designated range. To filter by a data value, check the “Apply” button to enable the test. By default, the test is passed if the data value is >= the minimum value supplied and <= the maximum value supplied. Uncheck the “Accept within” button to reject the return if it lies within the supplied range. You can test for Elevation(Z), Intensity, Scan Angle, Scan Direction, Time, User data, and Point Source ID.