Closed giyoon99 closed 1 month ago
안녕하세요. 현재 이슈에 대해서 답변드리겠습니다.
현재 JSHTMLObject에서 제공하는 Properties 구성요소 중 하나인 position을 이용하여 생성된 JSHTMLObject 이동 기능 사용이 가능합니다.
아래 샘플 코드에서 사용한 엔진 버전은 2.7.1 (Released 2024-10-02)이고 코드를 통해 다음과 같은 결과를 얻었습니다.
샘플 코드
// 변수 선언
var GLOBAL = {
Camera: null,
Object: null,
};
// 객체 생성 함수
function CreateHTMLObject() {
let lon, lat, alt;
lon = 129.1218;
lat = 35.167229;
alt = 10;
let layerList = new Module.JSLayerList(true);
let layer = layerList.createLayer("HTML_TEST", Module.ELT_POLYHEDRON);
m_object = Module.createHTMLObject("text");
let element = document.createElement("img");
let parameter = {
position: new Module.JSVector3D(lon, lat, alt), // Position
container: "MapContianer", // Specify the name of the container to hold the div (if there is no div corresponding to the name, it will be created during createHTMLObject operation)
canvas: Module.canvas, // Canvas for screen size setting
element: element, // HTML Element to be linked with the engine object
};
let complet = m_object.createbyJson(parameter);
if (complet.result == 1) {
layer.addObject(m_object, 0);
element.style.color = "rgba(255,255,255,1)";
element.className = "image";
element.src = "./data/map_pin.png";
}
document.getElementById("edit_lon").value = lon;
document.getElementById("edit_lat").value = lat;
document.getElementById("edit_alt").value = alt;
}
// 객체 이동 함수
function move() {
let lon = document.getElementById("edit_lon").value;
let lat = document.getElementById("edit_lat").value;
let alt = document.getElementById("edit_alt").value;
// Set Move Object
let position = new Module.JSVector3D(lon, lat, alt);
m_object.position = position;
// Map Refresh
m_object.refresh();
Module.XDRenderData();
}
현재 이미지와 결과는 샘플코드에서 JSHTMLObject에서 제공하는 Properties 구성요소 중 하나인 position를 입력하여 얻은 결과로 주요 코드는 아래와 같습니다.
function move() {
...
let position = new Module.JSVector3D(lon, lat, alt);
m_object.position = position;
}
현재 position은 정상적으로 동작하는걸 확인 하였습니다.
감사합니다!
엔진 버전 : 2.7.0
문의 내용 : 안녕하세요!
html 오브젝트 생성 후 위치를 수정하려고 하는데 setPosition 함수는 따로 없고 position으로 위치 조회만 가능하길래 position 값을 변경해 보아도 값만 수정되고 오브젝트 자체의 위치는 변동이 없어서 문의드립니다.
지원하지 않는건지 제가 못찾는건지 모르겠습니다😄