Module SimpleRope-PIXI

class type _t = { ... }
type t = Js.t(_t);

The rope allows you to draw a texture across several points and then manipulate these points

module Impl: { ... };
include PIXI.EventEmitter.Impl;
let create: unit => PIXI.EventEmitter.t;
let eventNames: Js.t(PIXI.EventEmitter._t) => array(string);
let listeners: Js.t(PIXI.EventEmitter._t) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => array((Js.t({.. }) => unit));
let listenerCount: Js.t(PIXI.EventEmitter._t) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => int;
let emit: Js.t(PIXI.EventEmitter._t) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => bool;
let on: Js.t(PIXI.EventEmitter._t as 'd) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => fn:('b => unit) => ?⁠context:'c => unit => Js.t('d);
let addListener: Js.t(PIXI.EventEmitter._t as 'd) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => fn:('b => unit) => ?⁠context:'c => unit => Js.t('d);
let once: Js.t(PIXI.EventEmitter._t as 'd) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => fn:('b => unit) => ?⁠context:'c => unit => Js.t('d);
let removeListener: Js.t(PIXI.EventEmitter._t as 'b) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => ?⁠fn:(Js.t({.. }) => unit) => ?⁠context:Js.t({.. }) => ?⁠once:bool => unit => Js.t('b);
let off: Js.t(PIXI.EventEmitter._t as 'b) => event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => ?⁠fn:(Js.t({.. }) => unit) => ?⁠context:Js.t({.. }) => ?⁠once:bool => unit => Js.t('b);
let removeAllListeners: Js.t(PIXI.EventEmitter._t as 'b) => ?⁠event:[ `String(string) | `Symbol(PIXI.Symbol.t) ] => unit => Js.t('b);
include PIXI.DisplayObject.Impl;
let create: unit => PIXI.DisplayObject.t;
let getAccessible: Js.t(PIXI.C.displayObject) => bool;
let setAccessible: Js.t(PIXI.C.displayObject) => bool => unit;
let getAccessibleChildren: Js.t(PIXI.C.displayObject) => bool;
let setAccessibleChildren: Js.t(PIXI.C.displayObject) => bool => unit;
let getAccessibleHint: Js.t(PIXI.C.displayObject) => string;
let setAccessibleHint: Js.t(PIXI.C.displayObject) => string => unit;
let getAccessibleTitle: Js.t(PIXI.C.displayObject) => Js.Nullable.t(string);
let setAccessibleTitle: Js.t(PIXI.C.displayObject) => Js.Nullable.t(string) => unit;
let getAccessibleType: Js.t(PIXI.C.displayObject) => string;
let setAccessibleType: Js.t(PIXI.C.displayObject) => string => unit;
let getAlpha: Js.t(PIXI.C.displayObject) => float;
let setAlpha: Js.t(PIXI.C.displayObject) => float => unit;
let getAngle: Js.t(PIXI.C.displayObject) => float;
let setAngle: Js.t(PIXI.C.displayObject) => float => unit;
let getButtonMode: Js.t(PIXI.C.displayObject) => bool;
let setButtonMode: Js.t(PIXI.C.displayObject) => bool => unit;
let getCacheAsBitmap: Js.t(PIXI.C.displayObject) => bool;
let setCacheAsBitmap: Js.t(PIXI.C.displayObject) => bool => unit;
let getCursor: Js.t(PIXI.C.displayObject) => string;
let setCursor: Js.t(PIXI.C.displayObject) => string => unit;
let getFilterArea: Js.t(PIXI.C.displayObject) => Js.Nullable.t(Js.t(PIXI.Rectangle._t));
let setFilterArea: Js.t(PIXI.C.displayObject) => Js.Nullable.t(Js.t(PIXI.Rectangle._t)) => unit;
let getFilters: Js.t(PIXI.C.displayObject) => Js.Nullable.t(array(PIXI.Filter.t));
let setFilters: Js.t(PIXI.C.displayObject) => Js.Nullable.t(array(PIXI.Filter.t)) => unit;
let getHitArea: Js.t(PIXI.C.displayObject) => 'hitArea;
let setHitArea: Js.t(PIXI.C.displayObject) => 'hitArea => unit;
let getInteractive: Js.t(PIXI.C.displayObject) => bool;
let setInteractive: Js.t(PIXI.C.displayObject) => bool => unit;
let getIsMask: Js.t(PIXI.C.displayObject) => bool;
let getIsSprite: Js.t(PIXI.C.displayObject) => bool;
let getLocalTransform: Js.t(PIXI.C.displayObject) => Js.t(PIXI.Matrix._t);
let getMask: Js.t(PIXI.C.displayObject) => 'mask;
let setMask: Js.t(PIXI.C.displayObject) => 'mask => unit;
let getName: Js.t(PIXI.C.displayObject) => Js.Nullable.t(string);
let setName: Js.t(PIXI.C.displayObject) => Js.Nullable.t(string) => unit;
let getParent: Js.t(PIXI.C.displayObject) => Js.Nullable.t(PIXI.C.container);
let getPivot: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t);
let setPivot: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t) => unit;
let getPosition: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t);
let setPosition: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t) => unit;
let getRenderable: Js.t(PIXI.C.displayObject) => bool;
let setRenderable: Js.t(PIXI.C.displayObject) => bool => unit;
let getRotation: Js.t(PIXI.C.displayObject) => float;
let setRotation: Js.t(PIXI.C.displayObject) => float => unit;
let getScale: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t);
let setScale: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t) => unit;
let getSkew: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t);
let setSkew: Js.t(PIXI.C.displayObject) => Js.t(PIXI.ObservablePoint._t) => unit;
let getTransform: Js.t(PIXI.C.displayObject) => Js.t(PIXI.Transform._t);
let getVisible: Js.t(PIXI.C.displayObject) => bool;
let setVisible: Js.t(PIXI.C.displayObject) => bool => unit;
let getWorldAlpha: Js.t(PIXI.C.displayObject) => float;
let getWorldTransform: Js.t(PIXI.C.displayObject) => Js.t(PIXI.Matrix._t);
let getWorldVisible: Js.t(PIXI.C.displayObject) => bool;
let getX: Js.t(PIXI.C.displayObject) => float;
let setX: Js.t(PIXI.C.displayObject) => float => unit;
let getY: Js.t(PIXI.C.displayObject) => float;
let setY: Js.t(PIXI.C.displayObject) => float => unit;
let getZIndex: Js.t(PIXI.C.displayObject) => float;
let setZIndex: Js.t(PIXI.C.displayObject) => float => unit;
let _recursivePostUpdateTransform: Js.t(PIXI.C.displayObject) => unit;
let destroy: Js.t(PIXI.C.displayObject) => unit;
let getBounds: Js.t(PIXI.C.displayObject) => ?⁠skipUpdate:bool => ?⁠rect:Js.t(PIXI.Rectangle._t) => unit => Js.t(PIXI.Rectangle._t);
let getGlobalPosition: Js.t(PIXI.C.displayObject) => ?⁠point:Js.t(PIXI.Point._t) => ?⁠skipUpdate:bool => unit => Js.t(PIXI.Point._t);
let getLocalBounds: Js.t(PIXI.C.displayObject) => ?⁠rectangle:Js.t(PIXI.Rectangle._t) => unit => Js.t(PIXI.Rectangle._t);
let setContainer: Js.t(PIXI.C.displayObject) => Js.t(PIXI.C.container as 'b) => Js.t('b);
let setTransform: Js.t(PIXI.C.displayObject) => ?⁠x:float => ?⁠y:float => ?⁠scaleX:float => ?⁠scaleY:float => ?⁠rotation:float => ?⁠skewX:float => ?⁠skewY:float => ?⁠pivotX:float => ?⁠pivotY:float => unit => PIXI.DisplayObject.t;
let toGlobal: Js.t(PIXI.C.displayObject) => position:[ `ObservablePoint(PIXI.ObservablePoint.t) | `Point(PIXI.Point.t) ] => ?⁠point:PIXI.Point.t => ?⁠skipUpdate:bool => unit => PIXI.Point.t;
let toLocal: Js.t(PIXI.C.displayObject) => position:[ `ObservablePoint(PIXI.ObservablePoint.t) | `Point(PIXI.Point.t) ] => ?⁠from:PIXI.DisplayObject.t => ?⁠point:PIXI.Point.t => ?⁠skipUpdate:bool => unit => PIXI.Point.t;
let updateTransform: Js.t(PIXI.C.displayObject) => unit;
include PIXI.Container.Impl;
let create: unit => PIXI.Container.t;
let createDestroyOptions: ?⁠children:bool => ?⁠texture:bool => ?⁠baseTexture:bool => unit => Js.t({. baseTexture: Js.undefined(bool), children: Js.undefined(bool), texture: Js.undefined(bool), });
let getChildren: Js.t(PIXI.C.container) => array(Js.t(PIXI.C.displayObject));
let getHeight: Js.t(PIXI.C.container) => float;
let setHeight: Js.t(PIXI.C.container) => float => unit;
let getInteractiveChildren: Js.t(PIXI.C.container) => bool;
let setInteractiveChildren: Js.t(PIXI.C.container) => bool => unit;
let getSortableChildren: Js.t(PIXI.C.container) => bool;
let setSortableChildren: Js.t(PIXI.C.container) => bool => unit;
let getSortDirty: Js.t(PIXI.C.container) => bool;
let setSortDirty: Js.t(PIXI.C.container) => bool => unit;
let getWidth: Js.t(PIXI.C.container) => float;
let setWidth: Js.t(PIXI.C.container) => float => unit;
let addChild: Js.t(PIXI.C.container) => Js.t(PIXI.C.displayObject as 'b) => Js.t('b);
let addChildAt: Js.t(PIXI.C.container) => Js.t(PIXI.C.displayObject as 'b) => index:int => Js.t('b);
let calculateBounds: Js.t(PIXI.C.container) => unit;
let _destroy: Js.t(PIXI.C.container) => ?⁠options:'a => unit => unit;
let destroy: Js.t(PIXI.C.container) => ?⁠options:Js.t({. baseTexture: Js.undefined(bool), children: Js.undefined(bool), texture: Js.undefined(bool), }) => unit => unit;
let getChildAt: Js.t(PIXI.C.container) => int => Js.t(PIXI.C.displayObject);
let getChildByName: Js.t(PIXI.C.container) => string => Js.t(PIXI.C.displayObject);
let getChildIndex: Js.t(PIXI.C.container) => Js.t(PIXI.C.displayObject) => int;
let removeChild: Js.t(PIXI.C.container) => Js.t(PIXI.C.displayObject as 'b) => Js.t('b);
let removeChildAt: Js.t(PIXI.C.container) => int => Js.t(PIXI.C.displayObject);
let removeChildren: Js.t(PIXI.C.container) => ?⁠beginIndex:int => ?⁠endIndex:int => unit => array(Js.t(PIXI.C.displayObject));
let renderCanvas: Js.t(PIXI.C.container) => Js.t(PIXI.AbstractRenderer._t) => unit;
let setChildIndex: Js.t(PIXI.C.container) => int => unit;
let sortChildren: Js.t(PIXI.C.container) => unit;
let swapChildren: Js.t(PIXI.C.container) => Js.t(PIXI.C.displayObject) => Js.t(PIXI.C.displayObject) => unit;
include PIXI.Mesh.Impl;
let _create: geometry:PIXI.Geometry.t => shader:[ `MeshMaterial(PIXI.MeshMaterial.t) | `Shader(PIXI.Shader.t) ] => ?⁠state:PIXI.State.t => ?⁠drawMode:int => unit => Js.t(PIXI.Mesh._t);
let create: geometry:PIXI.Geometry.t => shader:[ `MeshMaterial(PIXI.MeshMaterial.t) | `Shader(PIXI.Shader.t) ] => ?⁠state:PIXI.State.t => ?⁠drawMode:PIXI.DRAW_MODES.t => unit => Js.t(PIXI.Mesh._t);
let batchableSize: int;
let getBlendMode: Js.t(PIXI.Mesh._t) => PIXI.BLEND_MODES.t;
let getDrawMode: Js.t(PIXI.Mesh._t) => PIXI.DRAW_MODES.t;
let setBlendMode: Js.t(PIXI.Mesh._t) => PIXI.BLEND_MODES.t => unit;
let setDrawMode: Js.t(PIXI.Mesh._t) => PIXI.DRAW_MODES.t => unit;
let getGeometry: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Geometry._t);
let getMaterial: Js.t(PIXI.Mesh._t) => Js.t(PIXI.MeshMaterial._t);
let setMaterial: Js.t(PIXI.Mesh._t) => Js.t(PIXI.MeshMaterial._t) => unit;
let getRoundPixels: Js.t(PIXI.Mesh._t) => bool;
let setRoundPixels: Js.t(PIXI.Mesh._t) => bool => unit;
let getShader: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Shader._t);
let setShader: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Shader._t) => unit;
let getSize: Js.t(PIXI.Mesh._t) => float;
let setSize: Js.t(PIXI.Mesh._t) => float => unit;
let getStart: Js.t(PIXI.Mesh._t) => int;
let setStart: Js.t(PIXI.Mesh._t) => int => unit;
let getState: Js.t(PIXI.Mesh._t) => Js.t(PIXI.State._t);
let setState: Js.t(PIXI.Mesh._t) => Js.t(PIXI.State._t) => unit;
let getTexture: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Texture._t);
let setTexture: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Texture._t) => unit;
let getTint: Js.t(PIXI.Mesh._t) => int;
let setTint: Js.t(PIXI.Mesh._t) => int => unit;
let getUvBuffer: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Buffer._t);
let getVerticesBuffer: Js.t(PIXI.Mesh._t) => Js.t(PIXI.Buffer._t);
let calculateUvs: Js.t(PIXI.Mesh._t) => unit;
let calculateVertices: Js.t(PIXI.Mesh._t) => unit;
let containsPoint: Js.t(PIXI.Mesh._t) => point:PIXI.Point.t => bool;
let destroy: Js.t(PIXI.Mesh._t) => ?⁠options:Js.t({. children: bool, }) => unit => unit;
include Impl;
let create: texture:PIXI.Texture.t => points:array(PIXI.Point.t) => ?⁠textureScale:float => unit => Js.t(_t);

creates new simple rope

parameter texture

The texture to use on the rope.

parameter points

An array of PIXI.Point objects to construct this rope.

parameter textureScale

Positive values scale rope texture keeping its aspect ratio. You can reduce alpha channel artifacts by providing a larger texture and downsampling here. If set to zero, texture will be streched instead.

let getAutoUpdate: Js.t(_t) => bool;

re-calculate vertices by rope points each frame

let setAutoUpdate: Js.t(_t) => bool => unit;

re-calculate vertices by rope points each frame