API / geotoolkit3d / scene / seismic / IndexGrid / IndexGrid
A grid specialized for IJ objects like seismic.
For convenience, a specialized version of Grid using a IndexCoordinates.
The grid will set its location and size in IJ automatically.
In order to be displayed correctly, this grid should be added to the SeismicVolume.
↳
IndexGrid
Constructors
Methods
Methods
▸ add(object): IndexGrid
Adds object as child of this object.
| Name | Type | Description |
|---|---|---|
object | Object3D<Object3DEventMap> | Object3D<Object3DEventMap>[] | object |
this
▸ addLegend(legend): void
Add the given legend to this grid planes.
| Name | Type |
|---|---|
legend | GridLegend |
void
▸ afterRender(scene, camera, plot, renderer): IndexGrid
This function is called after rendering and can update this object's content.
It should not trigger any invalidateObject though.
Note that it is not necessary nor recommended to explicitly call afterRender on this object's children as beforeRender will be called on all nodes present in the scene.
This will be executed after the transformations simplification.
See
Plot for more details on the render steps
| Name | Type | Description |
|---|---|---|
scene | Scene | The scene |
camera | Camera | The camera used for this render phase. |
plot | Plot | The 3D plot |
renderer | WebGLRenderer | The renderer |
▸ beforeRender(scene, camera, plot, renderer): IndexGrid
This function is called prior to rendering and can update this object's content.
It should not trigger any invalidateObject though.
Note that it is not necessary nor recommended to explicitly call beforeRender on this object's children as beforeRender will be called on all nodes present in the scene.
This will be executed after the transformations simplification.
See
Plot for more details on the render steps
| Name | Type | Description |
|---|---|---|
scene | Scene | The scene |
camera | PerspectiveCamera | OrthographicCamera | The camera used for this render phase. |
plot | Plot | The 3D plot |
renderer | WebGLRenderer | The renderer |
▸ dispose(): void
Dispose object
void
▸ getClassName(): string
string
▸ getCounts(): Vector3
Return the grid's tick counts
Vector3
The ticks count
▸ getEnd(): Vector3
Return the grid's location 'end'
Vector3
▸ getLevels(): Range
Get minimum and maximum level of details, that used for grid generation from tick generators
Deprecated
since 5.0. Levels are not used in grid generation from tick generators.
▸ getMode(): ModeCallback
Return the grid's mode
The grid mode
▸ getModelEnd(): Vector3
Return the grid's 'modelend'
Vector3
The grid's modelend
▸ getModelStart(): Vector3
Return the grid's 'modelstart'
Vector3
The grid's modelstart
▸ getOptions(): Required<Omit<Options, "isselectable"> & { axis?: { distance?: number ; formatters?: { x?: FormatterCallback ; y?: FormatterCallback ; z?: FormatterCallback } ; linestyles?: { x?: Type ; y?: Type ; z?: Type } ; outlines?: OutlinesOptions ; textstyles?: { x?: Type ; y?: Type ; z?: Type } } ; counts?: Vector3 ; end?: Vector3 ; grid?: { linestyles?: { x?: Type ; y?: Type ; z?: Type } } ; levels?: Range ; mode?: Mode | ModeCallback ; modelend?: Vector3 ; modelstart?: Vector3 ; planecolor?: string | Color ; planeopacity?: number ; start?: Vector3 ; tickgenerators?: TickGenerators ; title?: { distance?: number ; outlines?: OutlinesOptions ; texts?: { x?: string ; y?: string ; z?: string } ; textstyles?: { x?: Type ; y?: Type ; z?: Type } } } & Options>
Get grid options
Required<Omit<Options, "isselectable"> & { axis?: { distance?: number ; formatters?: { x?: FormatterCallback ; y?: FormatterCallback ; z?: FormatterCallback } ; linestyles?: { x?: Type ; y?: Type ; z?: Type } ; outlines?: OutlinesOptions ; textstyles?: { x?: Type ; y?: Type ; z?: Type } } ; counts?: Vector3 ; end?: Vector3 ; grid?: { linestyles?: { x?: Type ; y?: Type ; z?: Type } } ; levels?: Range ; mode?: Mode | ModeCallback ; modelend?: Vector3 ; modelstart?: Vector3 ; planecolor?: string | Color ; planeopacity?: number ; start?: Vector3 ; tickgenerators?: TickGenerators ; title?: { distance?: number ; outlines?: OutlinesOptions ; texts?: { x?: string ; y?: string ; z?: string } ; textstyles?: { x?: Type ; y?: Type ; z?: Type } } } & Options>
▸ getOutlines(): OutlinesOptions
Get axis outlines
axis outlines
▸ getPlanes(): Record<PlaneName, Object3D<Object3DEventMap>>
Get the six grid planes
Record<PlaneName, Object3D<Object3DEventMap>>
planes
▸ getStart(): Vector3
Return the grid's location 'start'
Vector3
▸ getTickGenerators(): TickGenerators
Get tick generators, that used for grid generation. TickGenerators can be null if not defined by user.
▸ getTitleOutlines(): OutlinesOptions
Get title outlines
title outlines
▸ getVisible(): boolean
Get visible
boolean
true, if object is visible
▸ getWorldBoundingBox(target?): Box3
Return world bounding box of the grid
| Name | Type | Description |
|---|---|---|
Optional target | Box3 | (optional) the Box3 to store the boundingBox in. |
Box3
bounding box
▸ invalidateObject<T>(event?): IndexGrid
Notifies this object and its parent that this object has been invalidated.
If this object is in a Plot, it will be marked as dirty and will trigger a rendering cycle.
| Name |
|---|
T |
| Name | Type | Description |
|---|---|---|
Optional event | Event<T> | The event to fire |
▸ isDisposed(): boolean
Returns whether this object has been disposed
boolean
▸ isSelectable(): boolean
Return if this object can be picked/selected (see RendererPicking).
boolean
▸ notify(type, source, args?): IndexGrid
Notify listeners
| Name | Type | Description |
|---|---|---|
type | string | event types |
source | any | of the event |
Optional args | any | arguments of the event |
this
▸ off(type?, callback?): IndexGrid
Detach listener on event. Calling .off() with no arguments removes all attached listeners. Calling .off(type) with no callback removes all attached listeners for specific type.
| Name | Type | Description |
|---|---|---|
Optional type | string | type of the event |
Optional callback | EventListener | function to be called |
this
▸ off<E>(type, callback): IndexGrid
| Name | Type |
|---|---|
E | extends string |
▸ on(type, callback, options?): IndexGrid
Attach listener on event that will be called whenever the specified event is delivered to the target
If the callback function is already in the list of event listeners for this target, the function is not added a second time.
If a particular anonymous function is in the list of event listeners registered for a certain target, and then later in the code, an identical anonymous function is given in an "on" call, the second function will also be added to the list of event listeners for that target.
| Name | Type | Description |
|---|---|---|
type | string | type of event or property |
callback | EventListener | to be called |
Optional options | Options | options of subscription |
this
▸ on<E>(type, callback, options?): IndexGrid
| Name | Type |
|---|---|
E | extends string |
| Name | Type |
|---|---|
type | E |
callback | (eventType: E, sender: IndexGrid, args: EventMap[E]) => void |
Optional options | Options |
▸ onStatsUpdated(metrics): IndexGrid
This function is called when the plot has updated performance metric.
It will be called every set number of frames.
The number of frame is customizable in the plot options advancedrendering.performancemetrics.updateframeperiod and is 100 by default.
| Name | Type | Description |
|---|---|---|
metrics | PerformanceMetrics | The performance metrics. |
▸ Protected onVisibilityChanged(): void
This method is called if visibility is changed. Send event Events.VisibilityChanged
void
▸ remove(object): IndexGrid
Removes object as child of this object.
| Name | Type | Description |
|---|---|---|
object | Object3D<Object3DEventMap> | Object3D<Object3DEventMap>[] | object |
this
▸ setOptions(options?): IndexGrid
Set options, the given json will be merged with the object's state so that only the given options will be changed.
| Name | Type |
|---|---|
Optional options | Options |
▸ setPosition(position): IndexGrid
Set Object's local position.
| Name | Type | Description |
|---|---|---|
position | Object | local position |
Optional position.x | number | |
Optional position.y | number | |
Optional position.z | number |
this
▸ setRotation(x, y, z, order?): IndexGrid
Set Object's local rotation (Euler angles), in radians.
| Name | Type | Description |
|---|---|---|
x | number | x angle |
y | number | y angle |
z | number | z angle |
Optional order | EulerOrder | euler order |
this
▸ setSelectable(selectable): void
Set if this object can be picked/selected (see RendererPicking).
| Name | Type | Description |
|---|---|---|
selectable | boolean | if can be selected |
void
▸ setVisible(visible, silent?): IndexGrid
Set visible
| Name | Type | Description |
|---|---|---|
visible | boolean | true, if object is visible |
Optional silent | boolean | true, if object shouldn't be invalidated |
this
▸ updateObject(scene, camera): IndexGrid
This function is called prior to rendering and can update this object's content.
It should not trigger any invalidateObject though.
Note that it is not necessary nor recommended to explicitly call updateObject on this object's children as updateObject will be called on all nodes present in the scene.
This will be executed before the transformations simplification.
See
Plot for more details on the render steps
| Name | Type | Description |
|---|---|---|
scene | Scene | The scene |
camera | Camera | The camera |
▸ useOwnHighlight(): boolean
Returns true if this object make its own highlight effect (like geotoolkit3d.scene.reservoir.hexahedral.ReservoirGrid) This is to prevent unnecessary executions of the costly highlight passes.
boolean
▸ Static getClassName(): string
string
▸ Static register(): void
Register object for special processing through a callback function
Example
geotoolkit3d.util.ObjectProcessor.getDefaultInstance().registerObject(this.getClassName(), callback);Deprecated
since 5.0, to allow custom object highlighting, please instead make your Object implement the interface geotoolkit3d/scene/ICustomHighlight.
void