2013-02-26 2 views
0

다른 지오메트리 설정 방법 CubeGeometry의 특정면에 대한 Three.ShapeGeometry? 큐브면의 다른 지오메트리

나는 얼굴이 구조는 아니고, 물체와 개념의 완전히 다른 종류이기 때문에 당신이 그것으로 기하학을 할당 할 수 없습니다이

var rectLength = 120, rectWidth = 40; 

      var rectShape = new THREE.Shape(); 
      rectShape.moveTo(0,0); 
      rectShape.lineTo(0, rectWidth); 
      rectShape.lineTo(rectLength, rectWidth); 
      rectShape.lineTo(rectLength, 0); 
      rectShape.lineTo(0, 0); 

var geom = new THREE.ShapeGeometry(rectShape); 
var geometry = new THREE.CubeGeometry(256, 100, 256); 
geometry.faces[0] = geom; 
geometry.faces[0].needsUpdate = true; 
+0

결과는 무엇입니까? 그게 당신이 원하는 바가 아니 었습니까? – Floris

+0

ypeError : 재료가 정의되지 않았습니다. [이 오류 발생시 중단] \t ... ap || material.bumpMap || material.normalMap || material.specularMap || 재료 ... three.js를 (라인 18648)은 형식 오류 : 재료는 [이 오류에 브레이크] 정의되지 \t ... AP = 연합 뉴스 || material.bumpMap || material.normalMap || material.specularMap || 재료 ... three.js를 (라인 18648)은 형식 오류 : 재료는 [이 오류에 브레이크] 정의되지 \t ... AP = 연합 뉴스 || material.bumpMap || material.normalMap || material.specularMap || 물질 ... – rkm

+0

큐브 지형학의 얼굴 중 하나에서 폴리 라인을 볼 필요가 있지만 위의 설명에서 오류가 발생했습니다. – rkm

답변

1

을 시도했다.

얼굴은 인덱스 번호로 참조되는 모양이 아닌 일련의 정점입니다. 정점을 작성한 다음면을 만드는 정점의 인덱스 번호를 정면에 알려줍니다. Face3은 3 개의 인덱스를 가지고 삼각형을 만들 것이고, Face4는 4 개의 인덱스를 가지며 4 개의 양면 다각형을 형성 할 것입니다.

아래에서 제공 한 링크를 보면 내 대답이 분명해야합니다.

Look here

은 BTW - 당신은 하나의 명백한 이유 얼굴로 모양을 사용할 수 없습니다. 모양에는 얼굴의 범위 (3 또는 4)를 벗어날 수있는 임의의 수의 꼭지점이 있습니다. 즉, 2 점 또는 100 점의 모양을 가질 수 있습니다.

+0

현재 내가 원하는 것은 기본적으로 3D 큐브이지만 각면 (측면면)은 다른 모양/위치를 가질 필요가 있습니다. 6 메쉬를 만들고 3D 큐브처럼 보이는 방식으로 결합 할 수 있습니까? 시작을 위해 planegeometry와 함께 6 mesh를 고려하고 theses meshes를 조합 할 수 있습니다. 그게 가능합니까? – rkm

+0

왜 큐브가 될지에 대해 다른 모양을 원한다고 확신 할 수 없습니다. 당신이하고 싶은 일은 각 얼굴마다 다른 질감을 가졌 으면이 질문에 표시된 것을 할 수 있습니다. http://stackoverflow.com/questions/13795354/verification-of-using-multiple-textures-with-three-js-cubes –

관련 문제