회원 로그인
|
Python for Maya - 10. polygon vertex random move
기반으로 복습하는 차원에서 재정리한 것입니다.
선택한 object의 vertex를 random으로 움직이는 스크립이다.
polygon sphere를 생성, 선택하여 아래 script를 실행하면 vertex가 무작위로 움직이게 된다.
import maya.cmds as cmds import random sel_obj = cmds.ls(sl=1) if len(sel_obj) == 1: if cmds.nodeType(cmds.listHistory(sel_obj[0], lv=1)[0]) == 'mesh': # listHistory mel 명령어로 선택된 object의 그전 shape node를 검색하여 nodeType이 'mesh'와 같은지 묻게 된다. poly_count = cmds.polyEvaluate(sel_obj[0], v=1) # polyEvaluate mel 명령어로 polygon의 정보를 poly_count에 치환한다. flag v는 vertex로 vetext의 갯수(int)를 poly_count 변수에 치환한다. range_ = (-1, 1) # 이동할 범위를 설정한다. 1 ~ -1 사이로 이동하게 된다. for no_ in range(poly_count): x_ = random.uniform(*range_) y_ = random.uniform(*range_) z_ = random.uniform(*range_) # random하게 range의 값이 x_, y_, z_ 변수로 치환한다. *는 함수나 명령에 값이 대입할 때, 자료의 인수 형태로 대입되게 도와주는 연활을 한단다. *를 쓰지 않는다면 range_의 값인 -1, 1이 그대로 들어가므로 에러가 발생된단다. cmds.move(x_, y_, z_, '%s.vtx[%s]' % (sel_obj[0], no_), r=1) # vertex들을 하나씩 이동하게 된다. poly_count (vertext 갯수) 조건이 맞을 때까지 for문을 계속 반복하여 range_변수에 random하게 수치를 변환하여 move mel 명령어로 vertex를 움직이게 된다.
─────────────────────────────────────────────────
source : http://cafe.naver.com/digitaldream/488
'Maya Python 시작하기' 10) polygon vertex random move (난리난 모양 만들기)
댓글 0개
| 엮인글 0개
466개(1/24페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
마야 뷰포트 네비게이션 팁 | 푸딩뱃살 | 43258 | 2020.04.06 17:22 | |
Maya 버전 별 Python 버전 | 푸딩뱃살 | 64533 | 2014.01.08 17:59 | |
464 | [Dev] Autodesk Maya Devkit 다운로드 | 푸딩뱃살 | 695 | 2023.01.28 14:28 |
463 | [Base] (해결 중) modules 환경설정 중 | 푸딩뱃살 | 636 | 2022.11.09 11:47 |
462 | [Script] pymel 딕셔너리형 사용 시 KeyError | 푸딩뱃살 | 847 | 2022.11.07 12:08 |
461 | [오류] Building Numpy for Maya Python 2.7.x | 푸딩뱃살 | 589 | 2022.10.23 14:38 |
460 | [Base] 뷰포트에서 조절자가 안 보일때 | 푸딩뱃살 | 773 | 2022.10.13 15:47 |
459 | [Rigging] mirror joints 사용 시 유의 사항 | 푸딩뱃살 | 787 | 2022.10.04 10:46 |
458 | [Script] 2022에서 enum34 모듈 설치 금지 | 푸딩뱃살 | 595 | 2022.08.17 18:08 |
457 | [Script] pymel 예제 | 푸딩뱃살 | 615 | 2022.07.05 19:20 |
456 | [Script] 인코드 / 디코드 - 2.7 한글 사용 | 푸딩뱃살 | 894 | 2022.03.08 17:52 |
455 | [Dev] ui 없이 mayapy로 자동화 | 푸딩뱃살 | 695 | 2022.02.17 13:56 |
454 | [Dev] mayapy로 ui파일 py로 | 푸딩뱃살 | 523 | 2022.02.15 18:20 |
453 | [오류] Error : MayaBonusTools | 푸딩뱃살 | 908 | 2022.01.21 17:52 |
452 | [오류] Error: ModuleNotFoundError | 푸딩뱃살 | 761 | 2022.01.21 16:24 |
451 | [Dev] mayapy | 푸딩뱃살 | 639 | 2022.01.19 20:08 |
450 | [Base] function selCom at 0x7f29c5c04aa0 | 푸딩뱃살 | 604 | 2022.01.19 17:24 |
449 | [Base] wireframe on shaded 단축키 만들기 | 푸딩뱃살 | 906 | 2022.01.04 10:55 |
448 | [오류] OpenCL Error | 푸딩뱃살 | 516 | 2021.12.28 01:40 |
447 | [Script] Easily Translate MEL Commands to Python | 푸딩뱃살 | 818 | 2021.12.02 11:22 |
446 | [Base] output window 띄우지 않기 | 푸딩뱃살 | 813 | 2021.11.24 21:44 |
445 | [Rigging] shapeEditorManager 삭제 안됨 | 푸딩뱃살 | 885 | 2021.11.12 23:30 |