【Houdini】SOP 노드 파라미터의 인터페이스에 마우스로 그룹 대상을 선택하는 녀석을 투입한다
절차 노트
1. 파라미터 준비
적절하게 노드 (일반 서브넷)를 생성하여 문자열 매개 변수를 만듭니다. 이름과 라벨은 무엇이든 좋다.
2. 버튼 동작 지정
아래의 파이썬 스크립트를 넣습니다. 선택하고 싶은 대상에 따라 geo_type의 값이 전환됩니다.
이번은 Primitive(여기서는 폴리곤 페이스)를 선택시키는 코드로 하고 있다. 다른 타입 지정의 값은 코멘트 아웃하고 있으므로, 참고까지.
import soputils
geo_type = (
#hou.geometryType.Edges,
#hou.geometryType.Points,
#hou.geometryType.Vertices,
hou.geometryType.Primitives,
)
kwargs['geometrytype'] = geo_type
kwargs['inputindex'] = 0
soputils.selectGroupParm(kwargs)
inputindex
의 값을 1로 바꾸면 선택 대상으로하는 입력 노드를 전환 할 수있었습니다.Action Help
의 지정은 버튼에 롤오버했을 때에 표시되는 도움말이므로 적당하게. 하지만 일본어는 문자 깨졌다.Action Icon
의 지정은 버튼의 아이콘 이미지 지정이므로, 지정하지 않아도 되지만 BUTTONS_reselect
로 하면(자) 다른 노드와 같게 된다.이것만. soputils 모듈에는 좋은 것이 잠들 것 같다.
이상의 설정만으로 버튼을 눌러 뷰포트로부터 마우스로 그룹 대상을 선택할 수 있게 된다.
Enter로 확정하면 파라미터란에
0-2
와 같은 포맷으로 선택된 페이스의 값이 들어간다. 복잡한 선택을 한 경우는 0 3 11 13 17-18 23
와 같은 캐릭터 라인이 된다. 글쎄, 그런 복잡한 형식으로 지정된 번호를 실제 번호로 확장하는 것은 번거롭지 않습니까?설정된 그룹 이용
서브넷 내부의 wrangle 노드에서 그룹 선택된 대상을 얻는 경우, 다음 VEX에서 프림 번호의 배열로 변환할 수 있었습니다.
group
라는 이름으로 파라미터를 만들고 있다고 가정합니다. 지나치게 다해. 2행째 이후는 프림 이외의 번호 일람을 얻는 경우의 예입니다.i[]@group_prims = expandprimgroup(0, chs("../group")); //フェイスの場合
//i[]@group_edges = expandedgegroup(0, chs("../group")); //エッジの場合
//i[]@group_points = expandpointgroup(0, chs("../group")); //ポイントの場合
//i[]@group_verices = expandvertexgroup(0, chs("../group")); //頂点の場合
설정하는 것이 좋을지도 모르는 태그와 그 값
사용자 인터페이스 지정 아래의 항목에 참고로 한 내장 노드에서 잘 설정된 값이있었습니다. 우선 지정하지 않아도 잘 움직이고 있습니다.
autoscope
0으로 하고 있는 노드가 상당히 있었다. sop_input
0으로 하는 노드가 있었다. 이쪽, 상세 알고 있는 분 있으시면 꼭 코멘트를.
Reference
이 문제에 관하여(【Houdini】SOP 노드 파라미터의 인터페이스에 마우스로 그룹 대상을 선택하는 녀석을 투입한다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/harayoki/items/d0460ae99c811fbcfa68텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)