2011-01-24 6 views

답변

4

간단한 접속 발견 xy 평면에 해당 3- 튜플 회전 선형 변환이고 그리드 :

p = Table[ Table[ 

    Polygon[{j - 1/2 i, i Sqrt[3]/2} + # & /@ {{0, 0}, {1/2,Sqrt[3]/2}, {1, 0}}], 

    {j, i, 9}], {i, 0, 9}]; 

Graphics[{EdgeForm[Black], FaceForm[White], p}] 

Triangular Grid

편집

더 명확한 버전, 그런 것 같아요 :

여기
s3 = Sqrt[3]; 
templateTriangleVertex = {{0, 0}, {1, s3}, {2, 0}}; 

p = Table[Table[ 

    Polygon[{2 j - i, s3 i } + # & /@ templateTriangleVertex], 

    {j, i, 9}], {i, 0, 9}]; 

Graphics[{EdgeForm[Black], FaceForm[White], p}] 
+0

감사합니다. 이것은 훨씬 간단합니다. 그러나 시각적으로 볼 때,이 격자는 야로 슬라브가 그렸던 것처럼 "동등한"것이 아닙니다. 왜, 어떻게 고칠 지 알지? –

+0

@Qiang은 단지 AspectRatio-> 1을 제거합니다 (디스플레이 문제 일뿐입니다). 내 대답 –

+0

을 업데이트했습니다. 당신의 것이 너무 간단해서 제 질문에 대한 답으로 선택되었습니다! 감사! –

4

이와 비슷한?

http://yaroslavvb.com/upload/save/triangular-grid.png

이 내가 사용하는 코드입니다. 아마 너무 위의 특정 작업에 대한 복잡, 내가이

  1. 유형 N까지 추가 정수의 3 개 튜플을 포함 무엇 this

    A = Sqrt[2/3] {Cos[#], Sin[#], Sqrt[1/2]} & /@ 
        Table[Pi/2 + 2 Pi/3 + 2 k Pi/3, {k, 0, 2}] // Transpose; 
    p2r[{x_, y_, z_}] := Most[A.{x, y, z}]; 
    n = 10; 
    types = 1/n Permutations /@ IntegerPartitions[n, {3}, Range[1, n]] // 
        Flatten[#, 1] &; 
    points = p2r /@ types; 
    Needs["ComputationalGeometry`"] 
    Graphics[{EdgeForm[Black], FaceForm[Transparent], 
        GraphicsComplex[points, 
        Polygon /@ DelaunayTriangulation[points // N][[All, 2]]]}] 
    

    같은 정수 격자를 시각화했다 코드의 일부입니다. 그 정수 R의 2 차원 부분 공간에 놓여^3

  2. A는
  3. 들로네 삼각 분할은 모든 삼각형 근처 점
+0

아이디어 좀 설명해 주시겠습니까? –

1

는 방법 '벨리 사리우스의 변형이다.

p = Table[{2 j - i, Sqrt[3] i}, {i, 0, 9}, {j, i, 9}] 

Graphics[ Line @ Join[p, Riffle @@@ Partition[p, 2, 1]] ] 
+0

@belisarius 덧붙여서, 명확하게하기 위해 더블 테이블 양식을 선호합니까? –

+0

@user로 메시지를 시작하는 것은 사용자가 대답을위한 주석 스레드에 참여했거나 주석을 달고있는 답변을 작성한 경우에만 유용합니다. 그가하지 않으면, 그는 당신의 메시지에 대해 경고를받지 못할 것이고 아마도 그것을 전혀 읽지 않을 것입니다. 나는 과거의 답을 찾아보기 만했다. 귀하의 질문에 답하기 위해 가끔 me_에 맞을 때, 저는 OP (원래 포스터)를 이해하는 것이 더 쉬울 것이라고 생각하는 방식으로 코드를 작성하기로 선택했습니다. 이는 항상 자신을 위해 쓰는 방식이 아닙니다. 아마도 가장 주목할만한 예외는 성능 문제를 해결하려고 할 때입니다. –

+0

또한 답에서 Qiang의 마지막 코멘트를 읽으면 단순함이 OP의 실제 가치라는 것을 알게 될 것입니다. 제가 질문을 쓰는 경우, 이해하는 데 몇 시간이 걸리는 것보다 더 단순하고 이해하기 쉬운 대답을 더 많이 가치있게 생각할 것입니다 ... 제가 무언가를 연구하고 대답이 나에게 생각을위한 식량을 제공하지 않는 한. –

관련 문제