@daign/2d-pipeline
Version:
Two dimensional graphics pipeline.
43 lines (42 loc) • 1.37 kB
TypeScript
import { Matrix3 } from '@daign/math';
import { GenericNode } from './genericNode';
import { GraphicNode } from './graphicNode';
import { View } from './view';
/**
* A concrete, renderable copy of a graphic node, belonging to a view.
*/
export declare class PresentationNode extends GenericNode<PresentationNode> {
view: View;
sourceNode: GraphicNode;
/**
* The projection from view coordinates to the coordinates of the element.
*/
projectViewToNode: Matrix3;
/**
* The projection from the coordinates of the element to view coordinates.
*/
projectNodeToView: Matrix3;
/**
* The projection from the coordinates of the element to view coordinates, not including native
* transforms.
*/
projectNodeToViewNonNative: Matrix3;
/**
* Method to remove the subscription on the source node.
*/
private removeSourceNodeSubscription;
/**
* Constructor.
* @param view - The view to which the node belongs.
* @param sourceNode - The source from which this node is copied.
*/
constructor(view: View, sourceNode: GraphicNode);
/**
* Update the projection matrices of the node and of its children.
*/
updateProjectionMatrices(): void;
/**
* Destroy this node and also remove the links from the source node.
*/
destroyNode(): void;
}