This is the documentation for Enlighten.
module Projected Points
These functions all operate on the optional m_ProjectedPointData RadDataBlock in the InputWorkspace class.
It allows you to store multiple versions of the duster pointers, generated offline. The data is stored per-instance, per-version as a set of patches you can extract and apply to the original positions.
General points:
All calls other than DoesInputWorkspaceHaveProjectionData() will fail and report and error if the projection data is not valid.
The instance GUID is the same as the GUID on PrecompInputInstances given to the precompute for this system.
Unrecognised instance GUIDs are not considered failures, but return negative counts to signify they were not recognised.
Unrecognised version IDs are not considered failures, but return zero counts (i.e. an empty patch). It is possible for an instance to have no points associated with it (e.g. too small or hidden) so zero points does not imply an unrecognised version ID.
You can extract the points and the versions IDs with the API. In each case you need to allocate the output memory in advance, and can allocate a single buffer for all calls by using the GetInputWorkspaceMax*() functions.
Functions
bool GEO_CALL Enlighten::DoesInputWorkspaceHaveProjectionData
public: bool GEO_CALL DoesInputWorkspaceHaveProjectionData
(
const InputWorkspace * inputWorkspace
)
Simple test to see if projection data is available.
Returns true if the inputWorkspace has data in its point projection RadDataBlock, otherwise false. This does quick and simple checks only and assumes that if the data exists it is well formed. Note that it can still have a valid RadDataBlock, but that block can be empty. You can test whether GetInputWorkspaceMaxProjectedPointsInAnyInstance() == 0 to check if the block is empty.
Parameters
[in] | inputWorkspace | The input workspace to use. |
bool GEO_CALL Enlighten::GetInputWorkspaceInstanceGuids
public: bool GEO_CALL GetInputWorkspaceInstanceGuids
(
const InputWorkspace * inputWorkspace,
Geo::GeoGuid * instanceIdsOut
)
Get all the instance GUIDs in this system.
This reports all the instance GUIDs this system saw and recorded during the precompute. You must pass an array that is at least as large as the number reported by GetInputWorkspaceInstanceGuids(). Note that it can succeed not have written anything out if there is a valid projection block, but it's empty. If there is no valid data (the block or input workspace is missing or corrupt) this call will return false, otherwise true.
Parameters
[in] | inputWorkspace | The input workspace to use. |
[out] | instanceIdsOut | A pointer to an array of GeoGuid to receive the instance GUIDs. Must not be null and at least as long as GetInputWorkspaceNumInstanceGuids(). |