Python 멋 진 3 차원 그림 그리 기 자세 한 설명

2828 단어 python삼 차원 도
보통 우리 가 Python 으로 그 리 는 것 은 2 차원 평면도 이지 만 가끔 은 3 차원 장면 도 를 그 려 야 한다.예 를 들 어 아래 와 같은 것 이다.

이 그림 들 은 어떻게 만 듭 니까?3 차원 벡터(SVG)그림 을 그 리 는 방법 을 공유 합 니 다.
팔면 체
우 리 는 먼저 아래 의 이 팔면 체 를 예 로 들 자.

1 가방 설치
우선 두 개의 필수 패 키 지 를 설치 합 니 다.

import pyrr # NumPy   3D    
import svgwrite # svg     
2.3D 그림 생 성 환경 정의
다음은 3 차원 그림 기반 환경 을 설정 하 는 몇 가지 종 류 를 정의 합 니 다.

viewport:사각형 그림 범위
camera:보기 행렬 과 투영 행렬 포함
mesh:svg 벡터 그림 에 필요 한 격자 표면 매트릭스,착색 기,스타일 사전
3 8 면 체 데이터 생 성
그리고 팔면 체 의 각 정점 의 데 이 터 를 생 성 합 니 다:

def octahedron():
  """Construct an eight-sided polyhedron"""
  f = sqrt(2.0) / 2.0
  verts = numpy.float32([ ( 0, -1, 0), (-f, 0, f), ( f, 0, f), ( f, 0, -f), (-f, 0, -f), ( 0, 1, 0) ])
  triangles = numpy.int32([ (0, 2, 1), (0, 3, 2), (0, 4, 3), (0, 1, 4), (5, 1, 2), (5, 2, 3), (5, 3, 4), (5, 4, 1) ])
  return verts[triangles]
4 pyrr 패키지 렌 더 링
다음은 pyrr 3 차원 라 이브 러 리 를 이용 하여 위의 원시 데 이 터 를 렌 더 링 하고 마지막 으로 svg 벡터 그림 을 생 성 합 니 다.

5 svg 생 성
위의 마지막 단계 에서 svg 도형 을 생 성 하려 면 아래 Engine 함 수 를 호출 해 야 합 니 다.약간 복잡 합 니 다.

상기 코드 는 모두 클래스 에 봉 하여 호출 하면 팔면 체 도형 을 생 성 할 수 있다.
팔면 체 외 에 도 많은 다른 도형 을 생 성 할 수 있다.
구체 와 클 라인 병

코드 는 다음 과 같 습 니 다:

다 면 구체

코드 는 다음 과 같 습 니 다:

빛 나 는 구체

코드 구현:

이런 곡면 체 도 그 릴 수 있어 요.

코드 구현 은 다음 과 같 습 니 다.

총결산
위 에서 말 한 것 은 소 편 이 소개 한 Python 이 멋 진 3 차원 그림 을 그 리 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!

좋은 웹페이지 즐겨찾기