CanvasTagMarker(markerOptions)

new CanvasTagMarker(markerOptions)

Parameters:
Name Type Description
markerOptions object
Properties
Name Type Description
size object

画布的大小

Properties
Name Type Description
width integer

画布的宽度

height integer

画布的高度

Extends

Members

color

针的颜色。

Overrides:
Example

Change color

 planeMarker.color = 0xff0000 // red in number
 planeMarker.color = new THREE.Color(0, 1, 0) // green in THREE.Color
 planeMarker.color = '#0000FF' // blue in string

readonly context

获取画布的2D上下文以绘制它。

depthTest

是否进行深度测试。如果是假的,总是在前面。

Overrides:
Example

Change depth test status

 planeMarker.depthTest = true // do depth test
 planeMarker.depthTest = !planeMarker.depthTest // flip the status

euler :object

Eular角度表示中的方向。 {x:绕X轴以弧度为单位的旋转角度,  y:弧度,  z:弧度,  顺序:旋转顺序,默认'XYZ'}。  用这个代替方向 如果你不熟悉数学。

Inherited From:
See:
Example

Set orientation by Eular angles

 marker.euler = {x: Math.PI/6, y: Math.PI/4, z: Math.PI/3} // rotate around X-axis for 30 degree; Y for 45 degree; Z for 60 degree, in that order.
 marker.euler = {y: Math.PI/2} // rotate around Y-axis for 90 degree.

fixedSize

set the fixed size of the planemarker. true means 10. it should be approximately the pixel of the height of the texture

Overrides:

readonly ID :string

获取唯一的ID。

Inherited From:

interactable :bool

如果标记是可交互的,则设置。设置为true以响应鼠标事件。

Inherited From:
Example

Set interactable

 marker.interactable = true // make this marker interactable
 marker.interactable = !marker.interactable // flip interactable status

isSprite

获取标签是否为精灵

Overrides:

name :string

一串名字。

Inherited From:
Example

Set name

 marker.name = 'this marker' // set name as 'this marker'
 marker.name = marker.name + ' suffix' // extend the name

orientation :object

通过均匀四元数{x,y,z,w}设置旋转。 使用EULAR 相反,如果你不知道如何使用这个。

Inherited From:
See:
Example

Set orientation

 marker.orientation = {x: 0, y: 0, z: 0, w: 1}

pinLength

精灵下方的引脚长度。

Overrides:
Example

Change pinLength

 planeMarker.pinLength = 100 // set pinLength to 100 (in meters)
 planeMarker.pinLength = 0 // no pinLength, pin will be invisible

pivot

设置标签的支点(旋转中心,如果标签是精灵)。

Overrides:

position :LngLatAlt

改变当前位置{lng,lat,alt}。

Inherited From:
Example

Set position

 marker.position = {
   lng: 113.93977612840078,
   lat: 22.5364271949327,
   alt: 12.3
 }

scale

规模。

Overrides:
Example

Change scale

 planeMarker.scale = 2.0 // set scale to 2.0

size

设置画布的大小。

Example

Change size

 canvasTagMarker.size = {
   width: 128,
   height: 64
 }

tagQuaternion

设置标签的四元数

Inherited From:

texture

要在精灵上显示的纹理。

Inherited From:
Example

Change texture

 let loader = new THREE.TextureLoader()
 loader.load('../public/assets/img/meta_description.png', (loadedTexture) => {
   planeMarker.texture = {
     texture: loadedTexture, // the texture to display
     aspectRatio: loadedTexture.image.width / loadedTexture.image.height // the aspect ratio of the texture, width / height
   }
 })

visible

精灵及其引脚的可见性。

Overrides:
Example

Change visibility of the sprite and pin

 planeMarker.visible = true // make them visible
 planeMarker.visible = !planeMarker.visible // flip the visibility

x :number

在x方向上设置标记的比例。

Inherited From:
Example

Set scale x

 marker.x = 2.0 // set scale x to 2.0
 marker.x = marker.x * 2.0 // make it two times bigger in x direction

y :number

在y方向上设置标记的比例。

Inherited From:
Example

Set scale y

 marker.y = 2.0 // set scale y to 2.0
 marker.y = marker.y * 2.0 // make it two times bigger in y direction

z :number

在z方向上设置标记的比例。

Inherited From:
Example

Set scale z

 marker.z = 2.0 // set scale z to 2.0
 marker.z = marker.z * 2.0 // make it two times bigger in z direction

Methods

abstract animate(options)

Propagated event, new frame being rendered. update scale if fixedSize > 0.

Parameters:
Name Type Description
options object
Inherited From:

destruct()

析构函数

Overrides:

detachControl()

分离并隐藏标记的控件小控件

Inherited From:
Example

Detach control

 marker.detachControl()

dim()

Un-highlight the marker. (hide the blue fence of the marker)

Inherited From:
Example

Un-highlight

 marker.dim()

light()

Highlight the marker. (show the blue fence of the marker)

Inherited From:
Example

Highlight

 marker.light()

off(eventType, handler)

从事件中取消注册处理程序。

Parameters:
Name Type Description
eventType string
handler function
Inherited From:
Example

Un-register interaction events

 marker.off('click')
 marker.off('mouseover')
 marker.off('mouseenter')
 marker.off('mouseleave')

on(eventType, handler)

用处理程序注册一个事件。 注意:一个事件只能有一个处理程序。

Parameters:
Name Type Description
eventType string

'click','mouseover','mouseenter','mouseleave'

handler function

事件处理器

Inherited From:
Example

Register interaction events

 marker.on('click', function (event) {
   console.log('click on marker ', marker, event)
 })
 marker.on('mouseover', function (event) {
   console.log('mouse over marker ', marker, event)
 })
 marker.on('mouseenter', function (event) {
   console.log('mouse enter marker ', marker, event)
 })
 marker.on('mouseleave', function (event) {
   console.log('mouse leave marker ', marker, event)
 })
 marker.interactable = true // the marker must be interactable for events to take effects

orientationByHorizontalPoints(pts, flip) → {Quaternion}

从水平点得到重新定位的方向

Parameters:
Name Type Default Description
pts Array.<LngLatAlt>
flip bool false
Returns:
Quaternion
Inherited From:

abstract sceneUpdated(options)

传播的定期事件处理程序。当场景内容更新时触发。

Parameters:
Name Type Description
options object
Inherited From:

setControlMode(mode)

设置控件Gizmo的模式

Parameters:
Name Type Description
mode string

控件gizmo'translate','rotate'的模式

Inherited From:
Example

Set the mode of the control

 marker.setControlMode('translate')
 marker.setControlMode('rotate')

shapeToEarth() → {Matrix4}

从shapeHolder-space到地球空间的变换矩阵

Returns:
Matrix4
Inherited From:

shapeToScene() → {Matrix4}

从shapeHolder-space到scene-root的变换矩阵

Returns:
Matrix4
Inherited From:

showControl(mode)

播放标记的{index}巡视路线

Parameters:
Name Type Description
mode string

控件gizmo的模式:'translate','rotate'

Inherited From:
Example

Show control

 marker.showControl('translate') // show control used for translate
 marker.showControl('rotate') // show control used for rotate

takeEffects()

使绘图命令生效。

Example
// get context
 let ctx = canvasTagMarker.context
 // draw something
 // let size = canvasTagMarker.size
 // ctx.drawRect(0, 0, size.width, size.height, some paint) // a rectangle here
 // take effects
 canvasTagMarker.takeEffects()

abstract updateVisibility(options)

传播事件,屏幕可见性正在更新。

Parameters:
Name Type Description
options object
Inherited From: