EgisCorp / XDWorld

WebGL 기반 3D GIS 엔진
15 stars 7 forks source link

화면 영역 밖에 있는 JSHTMLObject의 element 수정 #454

Open suhwna opened 4 days ago

suhwna commented 4 days ago

엔진 버전 : 2.8.3

문의 내용 :

안녕하세요

JSHTMLObject 객체의 element가 화면 영역에 존재할 때는 수정이 가능한데 화면 밖에 있는 객체의 element를 수정할 방법이 있나요?

egiskorea-ryong commented 4 days ago

안녕하세요.

JSHTMLObject 객체도 다른 객체와 마찬가지로 화면 영역에서 벗어날 경우 랜더링 되지 않고 메모리에서 삭제됩니다.

그리고 화면 영역에 들어올 경우 다시 랜더링되고 메모리에 올라갑니다.

수정하시고자하는게 어떤 기능인지 알려주시면 기능 추가가 가능한지 검토해보겠습니다.

감사합니다.

suhwna commented 4 days ago

답변 감사합니다.

객체가 화면에는 렌더링 되어 있지 않아도 레이어에서 JSHTMLObject 객체를 가져와 element만 수정이 가능할까요? 특정 버튼 클릭 시 JSHTMLObject의 HTML에 클래스를 추가하거나 특정 div만 삭제하려고 하는데, 화면 영역 밖에 있는 객체들은 렌더링 되지 않아 화면 상에 있는 객체에만 추가가 됩니다.

egiskorea-ryong commented 4 days ago

HTML 객체가 시야에서 사라져도 HTML Element가 삭제되지 않고

계속 존재함으로써 사이트 자체가 무거워지는 문제 발생할 수 있습니다.

그로인해 HTML 객체가 시야에서 사라질 경우 HTML Element를 reomve 하고 있습니다.

callback 함수를 활용하여 해당 기능을 구현하시는것을 추천드립니다.

HTMLObject 메뉴얼

해당 callback을 활용하여 시야에 들어올 경우 원하시는 작업을 하시는 것을 추천드립니다.

감사합니다.

egiskorea-ryong commented 4 days ago

해당 기능에 대해 검토하였을 때 다른 방안이 있어 엔진 수정이 필요합니다.

element를 property로 지원할 수 있도록 작업 후 다음 정기배포에 업데이트하겠습니다.

감사합니다.

egiskorea-ryong commented 1 day ago

안녕하세요.

해당 기능추가되었습니다.

2.8.4_hotfix 엔진을 사용해주시기 바랍니다.