LuciadCPillar C# 2023.1.04
Luciad.Models.Features.IFeatureGeometryProvider Interface Reference

This class can provide the Geometry associated with a Feature, and apply Geometry changes on that Feature. More...

Inheritance diagram for Luciad.Models.Features.IFeatureGeometryProvider:
Luciad.Models.Features.DefaultFeatureGeometryProvider

Public Member Functions

Luciad.Models.Features.Feature ApplyGeometry (Luciad.Models.Features.Feature originalFeature, Luciad.Geometries.Geometry newGeometry)
 Updates the original Feature using the modified Geometry, and returns it. More...
 
Luciad.Geometries.Geometry GetGeometry (Luciad.Models.Features.Feature feature)
 Return the geometry for a Feature (for example a Geometry using which a Geometry can be edited or created). More...
 

Detailed Description

This class can provide the Geometry associated with a Feature, and apply Geometry changes on that Feature.

this can for example be used to specify the Geometry that is used to edit or create a Feature. See the related guide for an overview of the editing API. See DefaultFeatureGeometryProvider for a default implementation that works for Features that use GeometryDataAnnotation. The provided geometry is not necessarily the same geometry as the one used for painting. An example would be to modify the location and orientation of a vessel by editing it as an Ellipse, which also has a location and an orientation. This could be implemented by: having getGeometry return an Ellipse geometry based on the location and orientation stored in a Feature having applyGeometry map the new Ellipse geometry back to a location and an orientation, and modify the Feature accordingly.

Similarly, a vessel feature could be created by creating an Ellipse geometry. 2020.1

Warning
C# documentation translation is incomplete. You can find more information in the C++ documentation for luciad::IFeatureGeometryProvider.

Member Function Documentation

◆ ApplyGeometry()

Luciad.Models.Features.Feature Luciad.Models.Features.IFeatureGeometryProvider.ApplyGeometry ( Luciad.Models.Features.Feature  originalFeature,
Luciad.Geometries.Geometry  newGeometry 
)

Updates the original Feature using the modified Geometry, and returns it.

This Geometry is not necessarily the same geometry as the one used for painting. See IFeatureGeometryProvider for an example.

originalFeature

the original Feature

newGeometry

a new Geometry to apply on the Feature

a new Feature, based on a modified Geometry

Warning
C# documentation translation is incomplete. You can find more information in the C++ documentation for luciad::IFeatureGeometryProvider::applyGeometry.

Implemented in Luciad.Models.Features.DefaultFeatureGeometryProvider.

◆ GetGeometry()

Luciad.Geometries.Geometry Luciad.Models.Features.IFeatureGeometryProvider.GetGeometry ( Luciad.Models.Features.Feature  feature)

Return the geometry for a Feature (for example a Geometry using which a Geometry can be edited or created).

This Geometry is not necessarily the same geometry as the one used for painting. See IFeatureGeometryProvider for more information.

feature

the Feature to edit

the Geometry using which a Feature can be edited, or nullptr if the Feature can not be edited using a Geometry

Warning
C# documentation translation is incomplete. You can find more information in the C++ documentation for luciad::IFeatureGeometryProvider::getGeometry.

Implemented in Luciad.Models.Features.DefaultFeatureGeometryProvider.