Represents the type of feature's shape. Default type is inferred from the 'shape' passed to the constructor.
Represents the type of feature's properties. Default type is inferred from the 'properties' passed to the constructor. If the 'properties' is not provided the type is defaulted to FeatureProperties.
// Creates a type-guarded Feature with the Point shape and specific properties
const leuvenCity = new Feature(point, {name: 'Leuven'});
// TypeScript infers the shape and properties type from the constructor inputs
const {x, y} = leuvenCity.shape;
console.log(`city: ${leuvenCity.properties.name}`);
// Let TypeScript know the types explicitly
interface CityProps {name: string, population: number}
const anotherCity = new Feature<Point, CityProps>(point, {name: 'Brussels', population: 2_100_000});
anotherCity.properties.population += 20_000;
Creates a new feature with the given geometry and properties. Represents a vector data object with a shape. It may include application specific properties.
the feature's shape.
an object hash containing the Feature's properties.
the identifier of the Feature. This id may be omitted when instantiating a new feature: for example, before adding a Feature to a MemoryStore. However, note that features which are part of the result of a model query must have an id.
The unique identifier of the Feature.
This unique id must uniquely identify the Feature within the context of a model, ie.within the context of a luciad.model.feature.FeatureModel
.
The unique identifier of the Feature.
This unique id must uniquely identify the Feature within the context of a model, ie.within the context of a luciad.model.feature.FeatureModel
.
The properties of the data object. This is optional and may be left undefined. Usually, this object is a key/value pair object.
The properties of the data object. This is optional and may be left undefined. Usually, this object is a key/value pair object.
The shape of the feature
The shape of the feature
Makes a deep clone of this feature.
a copy of this feature
Represents a vector data object with a shape. It may include application specific properties.