회원 로그인
정보기억 정보기억에 체크할 경우 다음접속시 아이디와 패스워드를 입력하지 않으셔도 됩니다.
그러나, 개인PC가 아닐 경우 타인이 로그인할 수 있습니다.
PC를 여러사람이 사용하는 공공장소에서는 체크하지 마세요.
소셜네트워크 서비스를 통해서 로그인하시면 별도의 로그인 절차없이 회원서비스를 이용하실 수 있습니다.


최근 게시물

1.노션에서 작성 중

1.노션에서 작성 중

개편하기 전까지 노션에서 작성 중

2024.04.04//read more

2.ChatGPT

2.ChatGPT

OpenAI로 대규모 언어 모델대화형...

2023.03.16//read more

3.노코딩 게임 엔진 - 빌..

3.노코딩 게임 엔진 - 빌..

빌드 지원안드로이드iOS윈도우즈특이사...

2023.03.14//read more

4.(완료) 미접속 회원 정..

4.(완료) 미접속 회원 정..

[완료] 36명의 회원을 정리하였습니...

2023.02.16//read more

5.매뉴얼 플러스 - 전자제..



안정적인 DNS 서비스 DNSEver
DNS Powered by DNSEver.com


Python for Maya - 4. set (집합)

artsOne | 2008.02.22 17:49 | 조회 4829
Digital Dream ( http://cafe.naver.com/digitaldream ) 카페의 'Maya Python 시작하기'의
기반으로 복습하는 차원에서 재정리한 것입니다.


set은 수학에서의 집합과 똑같다.
mayaPython00400.jpg


집합의 종류에는 전체 집합, 합집합, 교집합, 차집합 등등 있다. 이것을 python에서도 쉽게 구현할 수가 있다.

import maya.cmds as cmd

항상 시작할 땐 maya.cmds를 import 해주고...

mayaPython00401.jpg



object 여러개를 만들고 일부를 선택하여 아래 code를 실행한다.

grp_a = set(cmd.ls(sl=1))

mayaPython00402.jpg



다시 다른 object를 선택하고 아래 code를 실행한다.

grp_b = set(cmd.ls(sl=1))

변수 grp_a와 grp_b에 각 선택한 object를 저장한 것이다.

grp_a와 grp_b를 가지고 set을 해보겠다.

mayaPython00403.jpg


* 합집합 (union) |

cmd.select(list(grp_a | grp_b))
mayaPython00404.jpg


* 교집합 (intersection) &

cmd.select(list(grp_a & grp_b))
mayaPython00405.jpg


* 차집합 (difference) -

cmd.select(list(grp_a - grp_b))
mayaPython00406.jpg 


* 대칭차집합 (symmetric difference) ^

cmd.select(list(grp_a ^ grp_b))


간단하면서 여러가지 응용이 가능할 듯 싶다.

grp_a에 들어 있는 자료를 확인해 보자.

grp_a
# Result: set([u'nurbsSphere9', u'nurbsSphere8', u'nurbsSphere19', u'nurbsSphere18', u'nurbsSphere3', u'nurbsSphere13', u'nurbsSphere15', u'nurbsSphere14', u'nurbsSphere7', u'nurbsSphere12', u'nurbsSphere10', u'nurbsSphere20']) #
set 자료 형태로 되어 있는걸 알 수 있다.
이것을 많이 사용하는 list 자료 형태로 바꾸고자 한다면...
list(grp_a)
# Result: [u'nurbsSphere9', u'nurbsSphere8', u'nurbsSphere19', u'nurbsSphere18', u'nurbsSphere3', u'nurbsSphere13', u'nurbsSphere15', u'nurbsSphere14', u'nurbsSphere7', u'nurbsSphere12', u'nurbsSphere10', u'nurbsSphere20'] # 
자료형을 맘대로 바로바로 변경할 있다는 것이 python의 최대 장점이다.

────────────────────────────────────────────────────────
source : http://cafe.naver.com/digitaldream/436 - 'Maya Python 시작하기' 4) set

466개(18/24페이지)
마야
번호 제목 글쓴이 조회 날짜
공지 마야 뷰포트 네비게이션 팁 푸딩뱃살 42778 2020.04.06 17:22
공지 Maya 버전 별 Python 버전 푸딩뱃살 64088 2014.01.08 17:59
124 [FX] Lesson 1: Creating nCloth collisions Step 2 사진 첨부파일 artsOne 2163 2008.04.13 17:28
123 [FX] Lesson 1: Creating nCloth collisions Step 1 사진 첨부파일 artsOne 2403 2008.04.13 16:23
122 [참고] Expression Manual 첨부파일 artsOne 2243 2008.04.13 02:44
121 [Script] MEL 기초 #01 - 기초 (자료형) artsOne 3959 2008.04.10 00:28
120 [Base] 선택 우선순위 첨부파일 artsone 2169 2008.04.09 02:47
119 [Script] Python for Maya - 10. polygon vertex random move 사진 첨부파일 artsOne 4619 2008.04.06 23:44
118 [Rigging] Deform > Edit Membership Tool 첨부파일 artsone 2635 2008.04.05 02:28
117 [Rigging] Deform > Wire 활용 artsone 2242 2008.04.05 02:01
116 [Animation] Bake Simulation artsone 1879 2008.04.01 23:04
115 [Rigging] 로프 Stretch Rigging 사진 첨부파일 artsone 2380 2008.03.31 21:40
114 [Rigging] Bouncing Ball Rigging 첨부파일 artsone 2366 2008.03.20 23:29
113 [Rigging] bind 후 object가 2배로 움직이는 현상 막기 첨부파일 artsone 2125 2008.03.08 03:28
112 [Rigging] Lattice와 Rigid bind를 이용한 skinning artsone 2641 2008.03.08 03:18
111 [Script] Python for Maya - 9. polysmooth 자동 설정 (format 변환) 사진 첨부파일 artsOne 4421 2008.03.05 01:18
110 [Script] Python for Maya - 8. random 응용 (if문) 사진 첨부파일 artsOne 4732 2008.02.27 02:22
109 [Script] Python for Maya - 7. random (for문) 사진 첨부파일 artsone 4755 2008.02.26 01:37
108 [Script] Python for Maya - 6. 리스트 자료 다루기 2 사진 첨부파일 artsOne 3836 2008.02.23 17:17
107 [Script] Python for Maya - 5. 리스트 자료 다루기 1 사진 첨부파일 artsOne 3924 2008.02.22 20:27
>> [Script] Python for Maya - 4. set (집합) 사진 첨부파일 artsOne 4830 2008.02.22 17:49
105 [Script] Python for Maya - 3. pickle (지속 모듈-파일 관리) 사진 첨부파일 artsOne 4806 2008.02.21 01:57