Code Monkey home page Code Monkey logo

mago3djs's Introduction

Build Status License

Korean Englsh Japan

mago3DJS

3차원 다중 블록 가시화를 위한 오픈소스 자바스크립트 라이브러리

AEC(Architecture, Engineering, Construction) 영역과 전통적인 3차원 공간정보(3D GIS)를 통합적으로 관리 및 가시화하는 차세대 3차원 GIS 플랫폼입니다. 실내,실 외 구별없이 AEC와 3D GIS를 웹 브라우저에서 통합해 줍니다. 대용량 BIM(Building Information Modelling), JT(Jupiter Tessellation), 3D GIS 파일 등을 별도의 프로그램 설치 없이 웹 브라우저 상에서 바로 살펴보고 협업작업을 진행할 수 있습니다.

특징

  • AEC와 3D GIS의 통합
  • 실내외 공간의 끊김없는 연계
  • 웹브라우저 상에서 구동되며, 별도의 플러그인이나 엑티브엑스 설치가 필요 없음
  • 오픈소스(Cesium, Web World Wind)를 기반으로 개발되어 개방성과 확장성이 뛰어남
  • 초대용량 3차원 파일의 효율적 관리 및 초고속 렌더링

지원 포맷 형식

  • IFC(Industry Foundation Classes)
  • JT(Jupiter Tessellation)
  • OBJ
  • 3DS
  • COLLADA

적용 사례

  • 남극과학기지 웹기반 3차원 시설, 기장비 관리시스템
  • LiveDroneMap

Getting Started

1. 개발환경 참고 문서

2. 소스 설치

  • git을 사용하여 git clone (https://github.com/Gaia3D/mago3djs.git) 으로 소스를 C:\git\repository\mago3djs 에 설치
  • eclipse를 실행 후 Project Import File -> import -> General -> Projects from Folder or Archive로 mago3djs를 import
  • git을 사용하지 않을 경우 Download ZIP 링크를 클릭하여 설치

3. Node 설치

  • node에 접속하여 Window Install(.msi) 64-bit를 설치
  • 설치가 끝난 뒤 C:\git\repository\mago3djs 디렉토리로 이동
  • mago3DJS에 필요한 node_modules를 Node Package Manager 사용하여 설치
    C:\git\repository\mago3djs> npm install
  • gulp는 터미널에서 모듈의 명령어를 사용하기 위해 Global로 설치
    C:\git\repository\mago3djs> npm install -g gulp

4. F4D Converter 설치

  • www.mago3d.com 에 접속
  • Installer : F4D Converter 64bit (this installation requires Windows 7 or later) 설치
  • Install Path: C:\F4DConverter\

5. 데이터 변환

  • 변한된 데이터(outputFolder)를 저장할 디렉토리를 생성
    C:\f4d\프로젝트명 (root folder인 f4d 폴더 아래 프로젝트 별로 디렉토리를 생성)
  • 변환할 데이터를 C:\demo_f4d(inputFolder)에 저장
  • 관리자 권한으로 Command Line Prompt(cmd.exe)를 실행한 다음 F4D Converter가 설치된 디렉토리로 이동
  • 다음을 실행
    ※ F4D Conveter argument 관련 설명은 F4D Conveter참조
    C:\F4DConverter>F4DConverter.exe #inputFolder C:\demo_f4d #outputFolder C:\f4d\프로젝트명 #log C:\demo_f4d/logTest.txt #indexing y
  • 변환 완료된 F4D 파일들을 mago3D JS 프로젝트에서 웹 서비스로 사용할 수 있도록 Symbolic Link 생성
    • 관리자 권한으로 Command Line Prompt(cmd.exe)를 실행하고 mago3D JS 프로젝트로 이동 C:\git\repository\mago3djs
    C:\git\repository\mago3djs>mklink /d "C:\git\repository\mago3djs\f4d" "C:\f4d" 
    (삭제의 경우 rmdir data)
    

6. 설정 파일 수정

두 가지의 설정파일을 수정한다. (data.json, policy.json)

data.json

  • 크게 세가지 영역으로 나눠진다. 속성값을 저장하는 attributes, 자식 노드 정보를 저장하는 children, 그외 위치 정보를 저장하는 영역
  • attributes 영역의 isPhysical 속성은 데이터 표시 여부를 체크하는 필수 속성
  • json의 root 노드의 data_key는 f4d 폴더 아래 프로젝트명과 일치
{
    //attributes영역
    "attributes" : {
      "isPhysical" : false,
      "nodeType": "root",
      "projectType": "프로젝트 타입"
    },
    //자식 노드 영역
    "children" : [
    ],
    //위치 정보 영역
    "data_key" : "프로젝트명",
    "data_name" : "프로젝트명"
}
  • C:\f4d\프로젝트명 에서 Rendering 할 디렉토리를 찾음
  • 디렉토리명에서 F4D_이후의 글자가 고유 식별자
  • data.json 파일에서 children의 data_key 값을 고유 식별자로 수정
  • lattiude, longitude, height, heading, pitch, roll 값을 적당한 값으로 수정
//자식 노드 영역
"children" : [
   {
     "attributes" : {
       "isPhysical" : true,
       "nodeType" : "..."
     },
     "children" : [
     ],
     "data_key" : "고유 식별자",
     "data_name" : "데이터 이름",
     "latitude" : 위도 입력,
     "longitude" : 경도 입력,
     "height" : 높이 입력,
     "heading" : heading 입력,
     "pitch" : pitch 입력,
     "roll" : roll 입력
  }
]

policy.json

  • 초기화시 로딩할 project, Init Camera Latitude, Longitude, CallBack Function, Geo Server 설정
  • 페이지 초기화시 로딩할 프로젝트 설정 key값 입력, 복수개의 프로젝트 로딩을 원하는 경우 , 로 추가
"geo_data_default_projects": [
    "data.json"
]
  • 웹 페이지 시작시 이동할 위치(lattiude, longitude)를 수정
"geo_init_latitude": "위도 입력",
"geo_init_longitude": "경도 입력"
  • Cesium ion Terrain access token 설정
    • mago3D JS 소스를 다운 받을 시에 기본적으로 Cesium World Terrain을 사용합니다.
    • mago3D JS 에서 cesium terrain 적용을 위해 Cesium ion token 발급 (https://cesium.com/ion/signin)
"geo_cesium_ion_token": "cesium ion token"

7. Node Server 실행

// private로 서버를 실행할경우
C:\git\repository\mago3djs>node server.js
// public로 서버를 실행할경우
C:\git\repository\mago3djs>node server.js --public true

8. 브라우저 확인

// Cesium
http:localhost/sample/cesium.html
// WorlWind
http:localhost/sample/worldwind.html

LICENSE

Apache License Version 2.0.





Using Google Translator

mago3DJS

Open source JavaScript library for 3D multi-block visualization

Generation 3D GIS platform that integrates and visualizes AEC (Architecture, Engineering, Construction) areas and traditional 3D spatial information (3D GIS). Integrate AEC and 3D GIS in a web browser, indoors, outdoors, indistinguishable. You can browse and collaborate on large-scale BIM (Building Information Modeling), JT (Jupiter Tessellation), and 3D GIS files without installing any programs on the web browser.

Characteristic

  • Integration of AEC and 3D GIS
  • Seamless connection of indoor and outdoor spaces
  • Runs on a web browser and does not require a separate plug-in or ActiveX installation
  • It is developed based on open source (Cesium, Web World Wind) and has excellent openness and scalability
  • Efficient management and ultra-fast rendering of high-capacity 3-D files

Supported Format Formats

  • IFC(Industry Foundation Classes)
  • JT(Jupiter Tessellation)
  • OBJ
  • 3DS
  • COLLADA

Application example

  • Antarctic Science Base Web-based 3D facility, equipment management system
  • LiveDroneMap

Getting Started

1. Development Environment

2. Source Download

  • Use git to install the source to C:\git\repository\mago3djs with git clone https://github.com/Gaia3D/mago3djs.git.
  • Run eclipse and import mago3djs into Project Import File -> import -> General -> Projects from Folder or Archive.
  • If you are not using git, click the Download ZIP link to install it.

3. Node Install

  • node to install Window Install (.msi) 64-bit.
  • After the installation is complete, go to the C:\git\repository\mago3djs directory.
  • Use node Package Manager to install node_modules for mago3DJS.
    C:\git\repository\mago3djs> npm install
  • gulp installs globally in Terminal to use the module's mockups.
    C:\git\repository\mago3djs> npm install -g gulp

4. F4D Converter Install

  • www.mago3d.com 에 접속
  • Installer : F4D Converter 64bit (this installation requires Windows 7 or later) 설치
  • Install Path: C:\F4DConverter\

5. Data Conversion

  • Create a directory to store the changed f4d(outputFolder)
    C:\f4d\projectname (Create a directory for each project under the data folder, the root folder)
  • Save the data to be converted to C:\demo_data(inputFolder)
  • Run Command Line Prompt (cmd.exe) as an administrator and move to the directory where F4D Converter is installed
  • Run
    ※ For a description of F4D Conveter argumentF4D Conveter
    C:\F4DConverter>F4DConverter.exe #inputFolder C:\demo_f4d #outputFolder C:\f4d\projectname #log C:\demo_f4d/logTest.txt #indexing y
  • Create Symbolic Link to use transformed F4D files as web service in mago3D JS project
    • Run Command Line Prompt (cmd.exe) with administrative privileges and go to mago3D JS project
      C:\mago3djs
    C:\mago3djs>mklink /d "C:\git\repository\mago3djs\f4d" "C:\f4d" 
    (delete is rmdir data)

6. Edit Configuration File

Add two configuration files. (data.json, policy.json)

data.json

  • It is divided into three major areas. Attributes to store attribute values, children to store child node information, other area to store location information
  • The isPhysical attribute of the - attributes field is a mandatory attribute
  • The data_key of the root node of json matches the project name under the f4d folder
{
    //attributes area
    "attributes" : {
      "isPhysical" : false,
      "nodeType": "root",
      "projectType": "project Type"
    },
    //Child node area
    "children" : [
    ],
    //Location information area
    "data_key" : "Project name",
    "data_name" : "Project name"
}
  • C:\f4d\projectnameto find the directory to render
  • The characters after F4D_ in the directory name are unique identifiers
  • Modify the data_key value of children from the data.json file to a unique identifier
  • Modify latitude, longitude, height, heading, pitch, and roll values to appropriate values
//Child node area
"children" : [
   {
     "attributes" : {
       "isPhysical" : true,
       "nodeType" : "..."
     },
     "children" : [
     ],
     "data_key" : "Unique identifier",
     "data_name" : "Data name",
     "latitude" : Enter latitude,
     "longitude" : Enter longitude,
     "height" : Enter height,
     "heading" : Enter heading,
     "pitch" : Enter pitch,
     "roll" : Enter roll
  }
]

policy.json

  • Project to be loaded at initialization, Init Camera Latitude, Longitude, CallBack Function, Geo Server setup
  • Enter key value to load when initializing page, , if you want to load multiple projects
"geo_data_default_projects": [
    "data.json"
]
  • Fix location (lattiude, longitude) to move when web page starts
"geo_init_latitude": "Enter latitude",
"geo_init_longitude": "Enter longitude"
  • Cesium ion Terrain access token setting
    • When downloading the maago3D JS source, the default is to use the Cesium World Terrain.
    • Issued Cesium ion token for cesium terrain application in mago3D JS. (https://cesium.com/ion/signin)
 "geo_cesium_ion_token": "cesium ion token" 

7. Running Node Server

// If you run the server privately
C:\git\repository\mago3djs>node server.js
// If you run the server as public
C:\git\repository\mago3djs>node server.js --public true

8. Browser verification

// Cesium
http:localhost/sample/cesium.html
// WorlWind
http:localhost/sample/worldwind.html

LICENSE

Apache License Version 2.0.





Googleの翻訳を使用して

mago3DJS

3次元マルチブロック可視化のためのオープンソースのJavaScriptライブラリ

AEC(Architecture、Engineering、Construction)領域と、伝統的な3次元空間情報(3D GIS)を統合的に管理し、可視化する次世代3次元GISプラットフォームです。室内、糸外の区別なくAECと3D GISをWebブラウザに統合されています。大容量BIM(Building Information Modelling)、JT(Jupiter Tessellation)、3D GISファイルなどを、別のプログラムをインストールすることなく、Webブラウザ上で操作してコラボレーションを行うことができます。

特徴

  • AECと3D GISの統合
  • 室内外空間のシームレスな連携
  • Webブラウザ上で駆動され、別のプラグインやActiveXのインストールが不要
  • オープンソース(Cesium、Web World Wind)をベースに開発され、オープンで拡張性に優れる
  • 大容量3次元ファイルの効率的な管理と超高速レンダリング

対応フォーマット形式

  • IFC(Industry Foundation Classes)
  • JT(Jupiter Tessellation)
  • OBJ
  • 3DS
  • COLLADA

適用事例

  • 南極科学基地のWebベースの3次元設備、基装備管理システム
  • LiveDroneMap

Getting Started

1. 開発環境参考文書

2. ソースインストール

  • gitを使用してgit clone https://github.com/Gaia3D/mago3djs.git にソースをC:\git\repository\mago3djs にインストールします。
  • eclipseを実行した後、Project Import File -> import -> General -> Projects from Folder or Archiveで mago3djs をimport。
  • gitを使用しない場合Download ZIPリンクをクリックしてインストールします。

3. Node のインストール

  • node に接続してWindow Install(.msi)64-bitをインストールします。
  • インストールが終わった後、C:\git\mago3DJSディレクトリに移動します。
  • mago3DJSに必要なnode_modulesをNode Package Managerを使用してインストールします。
    C:\git\repository\mago3djs> npm install
  • gulpはモジュールを端末の全ユーザーが使用する場合に使用します。
    C:\git\repository\mago3djs> npm install -g gulp

4. F4D Converterインストール

  • www.mago3d.com 에 접속
  • Installer : F4D Converter 64bit (this installation requires Windows 7 or later) 설치
  • Install Path: C:\F4DConverter\

5. データ変換

  • 変わったデータ(outputFolder)を格納するディレクトリを作成し
    C:\f4d\プロジェクト名(root folderであるdataフォルダの下のプロジェクトごとにディレクトリを作成)
  • 変換するデータをC:\demo_f4d(inputFolder)に保存
  • 管理者権限でCommand Line Prompt(cmd.exe)を実行し、F4D Converterがインストールされてディレクトリに移動
  • 次を実行し
    ※ F4D Conveter argument 関連説明はF4D Conveter参照
    C:\F4DConverter>F4DConverter.exe #inputFolder C:\demo_f4d #outputFolder C:\f4d\プロジェクト名 #log C:\demo_f4d/logTest.txt #indexing y
  • 変換完了F4Dファイルをmago3D JSプロジェクトでは、Webサービスとして利用できるようにSymbolic Linkを作成
    • 管理者権限でCommand Line Prompt(cmd.exe)を実行して、mago3D JSプロジェクトに移動
      C:\mago3djs
    C:\mago3djs>mklink /d "C:\git\repository\mago3djs\f4d" "C:\f4d" 
    (削除の場合 rmdir data)

6. 設定ファイルを変更する

二種類の設定ファイルを追加します。 (data.json, policy.json)

data.json

  • 大きく3つのエリアに分けられる。属性値を格納するattributes、子ノードの情報を格納するchildren、その他の位置情報を格納する領域
  • attributes領域のisPhysicalプロパティは、データを表示するかどうかをチェックする必須属性
  • jsonのrootノードのdata_keyはf4dフォルダの下のプロジェクト名と一致
{
    //attributes領域
    "attributes" : {
      "isPhysical" : false,
      "nodeType": "root",
      "projectType": "プロジェクトのタイプ"
    },
    //子ノードの領域
    "children" : [
    ],
    //位置情報領域
    "data_key" : "プロジェクト名",
    "data_name" : "プロジェクト名"
}
  • C:\f4d\プロジェクト名でRenderingするディレクトリを捜す
  • ディレクトリ名でF4D_以降の文字が一意の識別子
  • data.jsonファイルからchildrenのdata_key値を一意の識別子として修正
  • latitude、longitude、height、heading、pitch、roll値を適切な値に変更
//子ノードの領域
"children" : [
   {
     "attributes" : {
       "isPhysical" : true,
       "nodeType" : "..."
     },
     "children" : [
     ],
     "data_key" : "一意の識別子",
     "data_name" : "データ名",
     "latitude" : 緯度の入力,
     "longitude" : 硬度入力,
     "height" : 高入力,
     "heading" : heading入力,
     "pitch" : pitch入力,
     "roll" : roll入力
  }
]

policy.json

  • 初期化時にロードすることがproject、Init Camera Latitude、Longitude、CallBack Function、Geo Server設定
  • ページの初期化時にロードすることがプロジェクトの設定のkeyの値の入力、複数のプロジェクトのロードをしたい場合は、に追加
"geo_data_default_projects": [
    "data.json"
]
  • Webページの開始時に移動先(lattiude、longitude)を修正
"geo_init_latitude": "緯度の入力",
"geo_init_longitude": "硬度入力"
  • セシウムイオン地形アクセストークンの設定
    • maago3D JSソースをダウンロードするとき、デフォルトでセシウム世界地形が使用されます。
    • mago3D JSにおけるセシウム地形適用のためのセシウムイオントークン発行。 (https://cesium.com/ion/signin)
 "geo_cesium_ion_token": "セシウムイオントークン" 

7. Node Serverを実行

//privateでサーバーを実行する場合
C:\git\ repository\mago3djs>node server.js
//publicでサーバーを実行する場合
C:\git\repository\mago3djs>node server.js--public true

8. Browser verification

// Cesium
http:localhost/sample/cesium.html
// WorlWind
http:localhost/sample/worldwind.html

LICENSE

Apache License Version 2.0.



mago3djs's People

Contributors

bcbae avatar bjjang-gaia avatar cheonjeongdae avatar dependabot[bot] avatar greenkeeper[bot] avatar heejinchoi avatar jungham avatar jwpark-gaia3d avatar kwunjaehyun avatar limhojun avatar mago3d avatar picaosgeo avatar sdson avatar shinhayan avatar shire75 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mago3djs's Issues

objectIndexFile.ihe can not be found

I followed all the steps of your trainning materials ,but as the last step, I have some problems about loading the F4D,as the error describe below:
image
but I already have the ihe file
image
can anyone tell me what is the problem?

Error when running gulpfile.js

Hi, I'm using Ubuntu, I've installed eclipse.
I have the following software installed:
node v10.15.1
[email protected]
Java openjdk version "1.8.0_191".

When I run on eclipse I run the file gulpfile.js I get the following error.


internal/util/inspect.js:31
const types = internalBinding('types');
              ^

ReferenceError: internalBinding is not defined
    at internal/util/inspect.js:31:15
    at req_ (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:137:5)
    at require (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:110:12)
    at util.js:25:21
    at req_ (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:137:5)
    at require (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:110:12)
    at fs.js:42:21
    at req_ (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:137:5)
    at Object.req [as require] (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/natives/index.js:54:10)
    at Object.<anonymous> (/home/dcapeletti/eclipse-workspace/mago3djs/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:1:99)

Attached is a capture.

Question, Which version of node is recommended? Can the wrong version of node be the cause of the problem?

Thanks

captura

Very difficult to find an issue with gotoIssueAPI

Hi, I have several issue records in the database of different objects but when trying to search for the issue through the API, the location is very variable in each object.
http://www.mago3d.com/homepage/api.do#gotoIssueAPI

The same happens with the mago3d demo site. If you register an issue and then try to access it, the location is not exact. Many times depending on the object, the location is very variable and is very difficult to identify.

Attached is a screenshot. The red door is the object that has been marked to create the issue, however gotoIssueAPI has created the red dot on the right, which is quite far away, making it very difficult to find.

https://cloud.disroot.org/s/kDKEdoXzYnDFMGa

I hope you can help me.

Thanks

An in-range update of yargs is breaking the build 🚨

The devDependency yargs was updated from 13.2.2 to 13.2.4.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

yargs is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Commits

The new version differs by 14 commits.

  • a6e67f1 chore(release): 13.2.4
  • fc13476 chore: update standard-verison dependency
  • bf46813 fix(i18n): rename unclear 'implication failed' to 'missing dependent arguments' (#1317)
  • a3a5d05 docs: fix a broken link to MS Terminology Search (#1341)
  • b4f8018 build: add .versionrc that hides test/build
  • 0c39183 chore(release): 13.2.3
  • 08e0746 chore: update deps (#1340)
  • 843e939 docs: make --no- boolean prefix easier to find in the docs (#1338)
  • 84cac07 docs: restore removed changelog of v13.2.0 (#1337)
  • b20db65 fix(deps): upgrade cliui for compatibility with latest chalk. (#1330)
  • c294d1b test: accept differently formatted output (#1327)
  • ac3f10c chore: move .hbs templates into .js to facilitate webpacking (#1320)
  • 0295132 fix: address issues with dutch translation (#1316)
  • 9f2468e doc: clarify parserConfiguration object structure (#1309)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An error occurred while rendering. Rendering has stopped.

Hello,
I have a Revit model that weighs 71 MB, I have exported it to IFC which weighs 250 MB. Then with F4DConverter I rendered the file.
The output of the process is as follows.

F4DConverter.exe #inputFolder c:\demo_data #outputFolder c:\data\workshop #meshType 0 #log c:\data\workshop\result.txt #indexing y
[Info]Arguments are following.
#indexing : y
#inputFolder : c:\demo_data
#log : c:\data\workshop\result.txt
#meshType : 0
#outputFolder : c:\data\workshop
===== Start processing this file : MULTIPARASPARAGUAYPORK.ifc
Detected IFC version: IFC2X
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
WARNING! <5.26873064923412748328246,8.88811636329923970833988,1.82998894161823000281686>==<5.26873064923412748328246,8.88811636329923970833988,1.82998894161823000281686>
WARNING! <5.26873064923412748328246,8.88811636329923970833988,1.82998894161823000281686>==<5.26873064923412748328246,8.88811636329923970833988,1.82998894161823000281686>
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
carve::triangulate::incorporateHolesIntoPolygon failed
ItemShapeInputData::addClosedPolyhedron: Meshset is not closed
[Info]Vertex trimming done.
[Info]Exterior detection done.
[Info]Model/reference detection done. 4466 models out of 45863 meshes detected.
[Info]VBO of each mesh created.
[Info]Mesh distribution on each octree done.
[Info]Net Surface Mesh created.

When I enter the browser to view it, I can see the model on the ground, but after a few seconds when I try to zoom in to see details of it, the browser launches the following error.


An error occurred while rendering. Rendering has stopped.
RangeError: Invalid typed array length: 8822716227
RangeError: Invalid typed array length: 8822716227
    at new Int8Array (<anonymous>)
    at BlocksList.parseBlockVersioned (Shader.js:30765:35)
    at BlocksList.parseBlocksListVersioned (Shader.js:30874:22)
    at MagoManager.manageQueue (Shader.js:9362:18)
    at MagoManager.startRender (Shader.js:7263:8)
    at MagoManager.start (Shader.js:5768:8)
    at executeCommands (http://localhost/src/engine/cesium/Cesium.js:226607:35)
    at executeCommandsInViewport (http://localhost/src/engine/cesium/Cesium.js:226966:9)
    at updateAndExecuteCommands (http://localhost/src/engine/cesium/Cesium.js:226814:13)
    at render (http://localhost/src/engine/cesium/Cesium.js:227350:9)

I enclose images so that you can appreciate the error that occurs.
I hope you can help me how to solve this problem.

Thank you

Model in load
model in load
Mistake when I approach the model
mistake when i approach the model

flyTo function 수정

MagoManager.prototype.flyTo = function(longitude, latitude, altitude, heading, pitch, roll, duration)
{
if (MagoConfig.getPolicy().geo_view_library === Constant.CESIUM)
{
if ( heading === undefined || pitch === undefined || roll === undefined || (heading === 0 && pitch === 0 && roll === 0))
{
this.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromDegrees(parseFloat(longitude),
parseFloat(latitude),
parseFloat(altitude) + 10),
duration: parseInt(duration)
});
}
else
{
this.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromDegrees(parseFloat(longitude),
parseFloat(latitude),
parseFloat(altitude) + 10),
orientation : {
heading : Cesium.Math.toRadians(heading),
pitch : Cesium.Math.toRadians(pitch),
roll : roll
},
duration: parseInt(duration)
});
}
}
else
{
this.wwd.goToAnimator.travelTime = duration * 1000;
this.wwd.goTo(new WorldWind.Position(parseFloat(latitude), parseFloat(longitude), parseFloat(altitude) + 50));
}

};

멀티 쓰레드 web worker 사용시 고려할 점

javascript 대용량 처리를 위해서는 멀티 쓰레드 처리가 필요하고
web worker 를 고려하게 된다.
web worker 를 사용함에 있어서 가장 문제가 되는 것이 서로 다른 쓰레드간 데이트 공유다.
그 문제의 해결책으로 제시되는 것이 SharedArrayBuffer 인데
역시나 고려해야 할 점이 많다.
나 역시.... 이 필자와 동일한 생각인데....
좋은 라이브러리가 나올때까지 mago3D에 적용하는 것은 보류하는것이 좋다고 생각한다.

http://hacks.mozilla.or.kr/2017/11/avoiding-race-conditions-in-sharedarraybuffers-with-atomics/

TypeError: Cannot read property 'setBoxSize' of undefined

안녕하세요. F4D 파일 업로드 시 제목과 같은 오류가 발생하여 문의드립니다.
IFC파일을 F4Dconverter로 변환하여 Mago라이브러리에 업로드 시에 이와같은 현상이 발생합니다.
F4Dconverter와 MagoJS는 Github에서 master 최신 버전을 다운로드받아 진행하였으며 샘플 데이터는
https://github.com/Gaia3D/mago3djs/files/2029661/demo_f4d.zip 에서 다운로드받았습니다.
"setSizesSubBoxes"함수에서 오류가 발생합니다.
image

이 현상에 대한 도움을 부탁드립니다.
감사합니다.

Shortcuts and Form-tag Collision Issues

$(document).ready(function() {
//Type in input-textbox propagate key event to document. Stop it.
// example
stopPropagationOnInput('move_data_key');
});

function stopPropagationOnInput(elementId){
document.getElementById(elementId).addEventListener('keydown',function(e) {
e.stopPropagation();
});
document.getElementById(elementId).addEventListener('keyup',function(e) {
e.stopPropagation();
});
}

License is missing

The package.json file says the project is under BSD License, but there isn't a license file in the repository. Please add the license.

How to get mago3djs work?

I found this very great project, and wanna to have a try, while I can't make it work, after I have converted the .ifc model to F4D format. I just don't know how could I load my custom data with mago3djs, and even don't know which page should I use to view the excamples after starting node server (seems the "cesium.html" under "\sample" folder is the demo page). Could someone help me with this?

The globe of the world does not load

Hi,
I just installed mago3d and loaded the test models but in the browser I can't see the globe of the earth. How can I solve it?
I attach images to see if you can help me.

Thank you
2018-10-11_16-02-50
chrome_2018-10-11_16-04-38

no model display in cesium

I follow the method successfully transferred f4d file, also installed in accordance with the method mago3djs, and can open cesium. But still can not see the model that I turn out. Hope to get advice, thank you.
data.zip

API for hiding and displaying objects

Hello, I would like to ask if there is a functionality in the API to hide objects by objectId, by datakey and other arguments.
This functionality seems to me super useful since many times the user wants to hide an object to see others.

Thank you for your help.

Karma TestRunner

karma, jasmine 조합이 분명 메뉴얼에는 잘 실행 된다고 하는데.... 나한테는 오류가 난다.
찾아봐도 답도 없고......
급하니 당분간 보류하고.... 다음에 시간날때 찾아 보자.

[Firefox]
Firefox 50.0.0 (Windows 10 0.0.0) ERROR
TypeError: alert is null
at external/jasmine-2.5.2/jasmine-html.js:154

[Chrome]
Chrome 55.0.2883 (Windows 10 0.0.0) ERROR
Uncaught TypeError: Cannot read property 'appendChild' of null
at external/jasmine-2.5.2/jasmine-html.js:154

cesium centerpoint error...

워크샵 샘플 파일을 통해 작동을 해봤는데 wordwind는 문제가 없지만
cesium에서
Cesium.js:224918
An error occurred while rendering. Rendering has stopped.
undefined
ReferenceError: centerPoint is not defined
이라는 에러와함께 맵을 가져오지 못하는데 어떤문제인지 알려주시면 감사하겠습니다..

An in-range update of eslint-plugin-react is breaking the build 🚨

The devDependency eslint-plugin-react was updated from 7.14.0 to 7.14.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-react is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for v7.14.1

Fixed

  • Fix prop-types crash on multiple destructuring (#2319 @golopot)
Commits

The new version differs by 3 commits.

  • 62255af Update CHANGELOG and bump version
  • 655eb01 Merge pull request #2320 from golopot/issue-2319
  • 9639d82 [Fix] prop-types: fix crash on multiple destructuring

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

chrome 브라우저 메모리 할당

Chrome has artificial per-tab memory limits for the JavaScript engine of around 1GB on 32 bit and 2GB on 64 bit. As you can see, just running 64 bit will get you more memory.
Assuming that's still not enough, you can change the artificial limit by passing the --max-old-space-size to V8. This specifies the limit in megabytes. For example, if you want to raise the limit to 16GB you would run

chrome.exe --js-flags="--max-old-space-size=16384"

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --flag-switches-begin --disable-accelerated-2d-canvas --flag-switches-end

dist 디렉토리 추가

dist 폴더를 추가하고...
버전이 변경될때 마다 compile 된 js 파일을 넣어서 죄공해 줄 필요가 있을거 같다.
고객이 굳이 우리 제품을 설치 하지 않아도

dist 에서 이 파일만 다운 받아서
html 파일 내에 복사해서..... 사용할 수 있도록.....

Can I change the rendering mode of a data_key in a Project?

I use the cesium demo, and find that I can change the rendering mode of a Project by the API(changePropertyRenderingAPI), but I also find that I can only control the project layer (using projectId), I can not control the object(data_key) show or not in the project.Did I miss something ? Would you help me with the issue ,or can you tell me how to achieve my goal?

How can I select the whole object?

As I use your F4D format in mago3d, I realise the selection of a chair is a only a bar, how I can select the whole chair instead of the component of it? Thanks.(the picture of the question show below)
image
image

lod init necessary

lod init code necessary.

this.magoPolicy = new Policy();
this.magoPolicy.setLod0DistInMeters(MagoConfig.getPolicy().geo_lod0);
this.magoPolicy.setLod1DistInMeters(MagoConfig.getPolicy().geo_lod1);
this.magoPolicy.setLod2DistInMeters(MagoConfig.getPolicy().geo_lod2);
this.magoPolicy.setLod3DistInMeters(MagoConfig.getPolicy().geo_lod3);
this.magoPolicy.setLod4DistInMeters(MagoConfig.getPolicy().geo_lod4);
this.magoPolicy.setLod5DistInMeters(MagoConfig.getPolicy().geo_lod5);

프로젝트 디렉토리 구조

어떻게 가져 가야 할지 고민을 해 봐야 할거 같다.
cesium 이 화면 표시를 함에 있어서 웹 서버가 꼭 필요 하다는 제약이 있다.
로컬 개발 환경에서 반드시 웹서버가 필요하다.
apache를 사용할 것인가? node를 사용할 것인가?
node를 사용하는 경우..... project 관리는 일관성이 있지만...
node express를 설치하면... 불필요하게 비대해 지는 느낌이 있다.
eclipse Http Preview 기능도 가능할거 같은데..... path 에 접두사가 붙는거 포트 변경을 모르겠다.
apache를 사용하자니..... eclipse에서 개발하다 수동으로 apache를 start 해 줘야 하는 불편함이 있다.
어떤 방법을 선택할 것인가?
일단은...... 귀찮으니 apache로 가고.... 나중에 고민하자.

/3d_data - f4d 데이터
/build - gulp 빌드. gitignore
/external/jasmine - 외부 javascript 관리
/src/cesium - 수정된 cesium.
/src/자바스크립트소스 - cesium plugin
/test - test 소스
/node_modules - node 모듈. gitignore
/images - 이미지 파일

src 구조는 뭔가 맘에 안든다.
test 는 jasmine의 경우 spec 이라는 이름이 맞지만.... 언제 test framework가 변경될지 몰라
범용적인 test가 나을거 같다.

튜닝 포인트

1 웹서버 테스트

  • nginx
    2 http2.0 적용
    3 cache
    4 local storage
    5 javascript 튜닝
    6 설계
  • 분할 로딩, thread 분리, queue 적용
    7 gzip
    8 data 그룹핑
    9 기타?????

주석은 한글만? 영어만? 한글 + 영어?

javascript 주석은 어떻게 달아야 할까?
글로벌이 대상이므로 영어로만 달아야 할까?
난 이 생각에 반대다.
한국 개발자 영어로 만들어서 영어를 모르는 한국 개발자들에게 고통을 주는것이 너무 싫다.
한국 개발자가 만들었으면 당연히 한글이 1순위가 되어야 한다고 생각한다.
그런데..... 글로벌 서비스를 지향하므로 영어도 제공 되어야 한다.
결국은 병행 할 수 밖에 없는데.....
내가 고민해 본 결과 이 방법이 제일 좋을거 같긴 한데.... 남들은 어떨까?

/**

  • 사용자 아이디로 고객 정보를 조회
  • [google - english] View customer information with user ID
  • @param id : 사용자 아이디 [google - english] user ID
  • @return person : 고객정보 [google - english] user information
    */
    function getPersonInfo(id) {
    return person;
    }

About Objectid

image
What is this objectid based on, and how it relates to the attributes of the component itself, such as the element id of revit? In addition, will this objectid change if the model is re-converted because of a version upgrade of a model? The reason for the above problem is that I am concerned with two aspects: One is how the objectid associated with certain properties of components (such as revit element id, or other fixed keywords, such as some of the ifc id. This can be found between the original model and the model after the f4d transformation; The second ,if the model version is updated, then whether the issue data or other data in mago3d is still bound to the component. Thank you. Hope to get the answer.

Error when I approach to see the model. DataStream is not defined

When I approach the model, the following error occurs:

An error occurred while rendering. Rendering has stopped.
ReferenceError: DataStream is not defined
ReferenceError: DataStream is not defined
    at Lego.parseLegoData (Shader.js:20672:15)
    at Lego.parseArrayBuffer (Shader.js:20523:7)
    at ParseQueue.parseArraySkins (Shader.js:26125:14)
    at MagoManager.manageQueue (Shader.js:10986:18)
    at MagoManager.startRender (Shader.js:9096:8)
    at MagoManager.start (Shader.js:8081:8)
    at executeCommands (http://localhost:8080/src/engine/cesium/Cesium.js:226607:35)
    at executeCommandsInViewport (http://localhost:8080/src/engine/cesium/Cesium.js:226966:9)
    at updateAndExecuteCommands (http://localhost:8080/src/engine/cesium/Cesium.js:226814:13)
    at render (http://localhost:8080/src/engine/cesium/Cesium.js:227350:9)

error

When I load cesium and navigate the balloon, it works well. The problem happens when I approach the model, nothing is loaded and the error appears immediately.

I hope you can help me.
Thanks

test 는 mocha, chai 로 변경

jasmine 이 browser 의존적이고...
karma로 실행 시켰을때 오류가 발생하는데 해결이 안되서 포기...
다음에 시간 날때 다시 해 보자.

mocha, chai 로 변경했음

Error using changeObjectInfoViewModeAPI API

Hello, I have written the html code and javascript in my html file that appears on http://www.mago3d.com/homepage/api.do#changeObjectInfoViewModeAPI but when I allow the information to be displayed and click on an object, an error message appears.

Shader.js:36611 Uncaught TypeError: window[functionName] is not a function
    at clickPositionCallback (Shader.js:36611)
    at Shader.js:14633
    at handleMouseUp (Cesium.js:79515)
    at handlePointerUp (Cesium.js:79926)
    at HTMLCanvasElement.listener (Cesium.js:79369)
clickPositionCallback @ Shader.js:36611
(anonymous) @ Shader.js:14633
handleMouseUp @ Cesium.js:79515
handlePointerUp @ Cesium.js:79926
listener @ Cesium.js:79369
Cesium.js:237541 An error occurred while rendering.  Rendering has stopped.
undefined
TypeError: window[functionName] is not a function
TypeError: window[functionName] is not a function
    at selectedObjectCallback (Shader.js:36548:22)
    at MagoManager.selectedObjectNotice (Shader.js:13472:4)
    at MagoManager.startRender (Shader.js:7356:11)
    at MagoManager.start (Shader.js:5768:8)
    at executeCommands (http://localhost:8080/src/engine/cesium/Cesium.js:226607:35)
    at executeCommandsInViewport (http://localhost:8080/src/engine/cesium/Cesium.js:226966:9)
    at updateAndExecuteCommands (http://localhost:8080/src/engine/cesium/Cesium.js:226814:13)
    at render (http://localhost:8080/src/engine/cesium/Cesium.js:227350:9)
    at tryAndCatchError (http://localhost:8080/src/engine/cesium/Cesium.js:227368:13)
    at Scene.render (http://localhost:8080/src/engine/cesium/Cesium.js:227409:13)
CesiumWidget.showErrorPanel @ Cesium.js:237541
(anonymous) @ Cesium.js:237254
Event.raiseEvent @ Cesium.js:11283
tryAndCatchError @ Cesium.js:227370
Scene.render @ Cesium.js:227409
CesiumWidget.render @ Cesium.js:237591
render @ Cesium.js:236970
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971
requestAnimationFrame (async)
requestAnimationFrame @ Cesium.js:78954
render @ Cesium.js:236971

Thanks

Attached screenshots.

chrome_2018-10-18_18-18-43

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.