$test 라는 스트링어레이에 다음과 같은 정보를 저장 시키겠습니다.
$test[0] = "10 15 80 90";
$test[1] = "10 15 80 90";
$test[2] = "10 13 100 70";
$test[3] = "3 20 100 90";
$test[4] = "2 20 100 100";
$test[5] = "20 1 1 1";
$test[6] = "20 1 1 5";
$test[7] = "10 100 0 100";
이 경우 번호 순서에 맞게 sort 시키는 요령은 어떻게 되나요?
그냥 스트링으로써 sort($test)를 하게되면
10 100 0 100
10 13 100 70
10 15 80 90
10 15 80 90
2 20 100 100
20 1 1 1
20 1 1 5
3 20 100 90
라는 결과가 나오는데, 이는 올바른 순서가 아니죠..
integer 로써 sort 시키는 요령은 어떻게 될까요?
마치 올림픽에서 국가별 금은동 순위를 정하듯이, 하나의 스트링의 하나의 덩어리로 순위가 매겨져야해서 머리만 복잡해지고 해결책이 떠오르지 않네요..
ㅠㅠ
ps. channelBox -q -sma mainChannelBox 명령으로는 short name 만 표시됩니다..
헬프를 보아도 이름을 길게 출력해주는 플래그는 없는듯하네요...
channelBox -e -ln 1 mainChannelBox
channelBox -e -nn 1 mainChannelBox
를 적용해봐도 마찬가지고...
translateX 가 tx 로 출력되니 attributeExists 명령으로 tx 어트리뷰트 존재 여부를 체크해도 필터링이되지 않습니다.
선택한 translateX 채널에대해서만 특정값을 setAttr 명령으로 적용시키려고하는데, 선택된 오브젝트에 texture 라는 어트리뷰트가 포함되어있으면
에러가 발생하더군요..... 알고보니 texture 도 tx 더라고요...
여러개의 서로 다른 오브젝트가 선택된 상태에서,
채널박스에서 선택한 어트리뷰트 유무를 신경쓰지 않고 실행할 수 있는 프로세스를 원하는거라서요~
아시다시피 채널박스에 표시되는 내용은 가장 마지막에 선택된 오브젝트 기준이라서, 다른 오브젝트에 없는 채널도 표시되니까요...
예를들어 pCube1 과 polyCube1 이 함게 선택되어있는 상태라면(마야는 채널박스에서 히스토리를 클릭하면 자동으로 select-addFirst 로 히스토리 노드를 추가 선택해주니까요)
polyCube1 의 texture 어트리뷰트까지 함께 변화가 생깁니다.
translateX 어트리뷰트만 변화를 주고싶어도 말이지요...

1. Quick Sort같은 sorting algorithm 을 참고하셔서 직접 구현하셔야겠는걸요?
2. 어차피 선택한 채널에 대해 적용하는 것이니까, 현재 선택된 오브젝트에 tx 어트리뷰트가 있는건 당연하다고 보고 하시면 안되나요?