Click or drag to resize

PointBatchPrimitiveSetPartial Method (IEnumerableCartesian, IEnumerableInt32, IndicesOrderHint)

Updates a subset of positions in a point batch.

Namespace:  AGI.Foundation.Graphics
Assembly:  AGI.Foundation.Graphics (in AGI.Foundation.Graphics.dll) Version: 24.1.418.0 (24.1.418.0)
public void SetPartial(
	IEnumerable<Cartesian> positions,
	IEnumerable<int> indices,
	IndicesOrderHint indicesOrderHint


Type: System.Collections.GenericIEnumerableCartesian
A collection of new positions used to update a subset of positions in the point batch.
Type: System.Collections.GenericIEnumerableInt32
A collection of zero-based indices that map a corresponding position in positions to a position already in the primitive. For example, if a primitive is first given 5 positions with a call to Set, positions 1 and 3 can be modified with SetPartial by passing in positions containing two new positions and an indices collection with two elements, e.g. [1, 3]. The first position in positions will modify the position at index 1 in the primitive and the second will modify the position at index 3.
Type: AGI.Foundation.Graphics.AdvancedIndicesOrderHint
An optimization hint indicating how indices are sorted.
InvalidOperationException The primitive's SetHint property is not Partial. Construct the primitive using Partial to order to call this method.
InvalidOperationException Cannot call this method until the primitive is first defined with Set. It is not possible to partially update an empty primitive.
ArgumentNullExceptionpositions or indices is null.
ArgumentExceptionpositions and indices must have the same number of elements.

To call SetPartial, the primitive must be constructed with Partial so the primitive builds the data structures necessary for partial updates. See the Set Hint topic for more information on selecting an appropriate value.

If the primitive's AutomaticallyComputeBoundingSphere property is , the primitive's BoundingSphere is computed based the primitive's unmodified positions and the updated positions from the positions collection. Otherwise, it is the caller's responsibility to update the primitive's BoundingSphere to a sphere that encompasses all the positions in the primitive.

See Also