/** * R3.Curve.Path.D2.Shape * @param parent * @param apiComponent * @param linkedObjects * @constructor */ R3.Curve.Path.D2.Shape = function( parent, apiComponent, linkedObjects ) { if (R3.Utils.UndefinedOrNull(linkedObjects)) { /** * This class behaves in such a way that we can create instances from it - we define the runtime and construct * the api object and upgrade its properties to runtime */ __RUNTIME_COMPONENT_MACRO__; R3.API.Curve.Path.D2.Shape.call( this, apiComponent ); } else { /** * This class was inherited and Component constructor will call the child class createInstance() * Add any more linking information to the linkedObjects object here */ } /** * Now we call the parent class but with linkedObjects - indicating that its being called from a child class * and should not do any runtime instantiation */ R3.Curve.Path.D2.call( this, parent, apiComponent, linkedObjects ) }; R3.Curve.Path.D2.Shape.prototype = Object.create(R3.Curve.Path.D2.prototype); R3.Curve.Path.D2.Shape.prototype.constructor = R3.Curve.Path.D2.Shape; /** * Creates a camera instance * @returns {*} */ R3.Curve.Path.D2.Shape.prototype.createInstance = function() { this.instance = this.graphics.Shape(this.points); R3.Component.prototype.createInstance.call(this); }; /** * Updates the instance with the current state */ R3.Curve.Path.D2.Shape.prototype.updateInstance = function(property) { R3.Curve.Path.D2.prototype.updateInstance.call(this, property); };