Browse Source

标签

master
lxc 2 years ago
parent
commit
7e3d7516df
  1. 20
      editor/js/menus/Menubar.Models.js

20
editor/js/menus/Menubar.Models.js

@ -106,8 +106,8 @@ function MenubarModels(editor) {
option.onClick(function () {
add2dlable("中国");
return ;
return;
let selectobj = editor.selected;
if (!!!selectobj) {
alert("none");
@ -117,7 +117,7 @@ function MenubarModels(editor) {
// debugger
// const moonDiv = document.createElement('div');
// moonDiv.className = 'label';
// moonDiv.textContent = 'Moon11111111111111111';
// moonDiv.style.marginTop = '-1em';
// let moonLabel = new CSS2DObject(moonDiv);
@ -161,8 +161,8 @@ function MenubarModels(editor) {
return container;
}
function add2dlable(text){
let labelCanvas = document.createElement('canvas');
function add2dlable(text) {
let labelCanvas = document.createElement('canvas');
const context = labelCanvas.getContext('2d');
context.font = 'Bold 20px Arial';
const labelWidth = context.measureText(text).width;
@ -171,7 +171,7 @@ function add2dlable(text){
context.font = 'Bold 20px Arial';
context.fillStyle = 'rgba( 255, 0, 0, 1 )';
context.fillText(text, 0, 20);
context.fillText(text, 0,20);
const labelTexture = new THREE.Texture(labelCanvas);
labelTexture.magFilter = THREE.LinearFilter;
labelTexture.minFilter = THREE.LinearFilter;
@ -182,24 +182,26 @@ function add2dlable(text){
});
labelMaterial.transparent = true;
const labelPlane = new THREE.PlaneGeometry(labelCanvas.width, labelCanvas.height);
let labelMesh = new THREE.Mesh(labelPlane, labelMaterial);
labelMesh.name='标签'
editor.execute(new AddObjectCommand(editor, labelMesh));
}
function AddSceneTextCSS2DLabel(obj) {
const labelDiv = document.createElement('div');
labelDiv.className = 'label';
labelDiv.identifierName = 'label';
labelDiv.textContent = '显示内容 Test ...';
labelDiv.style.marginTop = '-1em';
labelDiv.style.marginTop = '-1em';
const css2dLabel = new CSS2DObject(labelDiv);
css2dLabel.position.set(0, 1, 0);
labelDiv.style.pointerEvents = 'none';//避免HTML标签遮挡三维场景的鼠标事件
css2dLabel.name = 'CSS2DLabel';
obj.add(css2dLabel);
editor.signals.render.dispatch();
}

Loading…
Cancel
Save