Maya Type 노드에 Python에서 일본어 문자 입력
htps : // 코 m / 아 d
참전해 보겠습니다.
Maya Type 도구에서도 사랑이 태어났습니다.
htps : // m / t_ks / ms / 7cfd0c3069b980 8d86
(▲)이쪽의 내용의 계속과 같은 것을 써 가고 싶습니다.
「~~하지만 사랑이 태어났다」, 그리운군요.
Maya 2016 Ext2등에 등장한 Type 툴(Type 노드)입니다만,
Type 노드의 textInput 속성에 set하면 python에서 문자를 입력 할 수 있습니다.
무려
보통 문자를 set해도 받아들이지 않습니다.
예를 들면 이런 느낌
set('a')
그렇다면 「a」라고 하는 문자가 들어 주어도 좋은 것 같습니다만, 안 됩니다.무엇이 좋은가 하면,
앞서 언급한 기사에서도 하고 있습니다만, 유니코드 코드라면 접수해 줍니다.
코드 변환
'a'를 입력하려면 'a' 유니코드 코드 '61'을 전달해야 합니다.
이것을 얻으려면 "ord"와 "hex"를 사용하십시오.
hex( ord(u'a') )
이것으로 괜찮을 것 같아, 아직 안돼.
속성 편집기에 "a"를 입력 할 수 있었지만,
경고가 발생하고 Type 노드 자체에는 반영되지 않습니다.
접두사
잘 보면 단순히 61을 얻은 것이 아니라,
16진수로 취급하기 위한 접두사 「0x」가 붙어 있는 것을 알 수 있습니다
이것으로 괜찮습니다.
…라고 생각했는데, 아직 좋지 않습니다.
다중 문자 대응
ord
는 1문자 밖에 변환할 수 없고, 복수문자 붙이면 에러가 되어 버립니다
좀 더 기합시켜줘…
그런 이유로 for에 전달하여 개별적으로 처리합니다.
또한, 여러 문자를 textInput.set 할 때,
각 문자에 대해 반각 공백으로 구분하십시오.
이것은 실제로 입력해 보았습니다.
알겠습니다.
할 수 있었다
이상을 정리해, 다음과 같은 함수로 해 보았습니다
import pymel.core as pm
def set_type_node_text( target_str ):
# unicode型で来なかったら変換
if not isinstance(target_str,unicode):
target_str = unicode( target_str,'cp932' )
# unicodeコードに変換、リストにためる
input_str = []
for c in target_str:
input_str.append( hex(ord(c))[2:] )
# 半角スペース区切りにして textInput.set
pm.selected()[0].textInput.set( u' '.join(input_str) )
target_str = "かきくけこ"
set_type_node_text( target_str )
런타임에 Type 노드를 선택하고 있기를 기대합니다.
이것으로 사랑이 태어난 계의 문언(?)을 주어도 괜찮다(힘들게 초현실적)
참고
유형 도구 옵션
https://knowledge.autodesk.com/ko/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/JPN/Maya-Modeling/files/GUID-92112B70-161B-4D89-A1E5-BC3D58274EFB-h html
다각형 텍스트 작성
htp // // lp. 어쨌든 sk. 코 m/ゔぃえw/마야우 L/2018/JP응/? gu d = gu D-5715F385-F27 A-49 0-A 624-CB376B669 DC
Reference
이 문제에 관하여(Maya Type 노드에 Python에서 일본어 문자 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/it_ks/items/f8e8ed422ded4ffa1e7b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
hex( ord(u'a') )
잘 보면 단순히 61을 얻은 것이 아니라,
16진수로 취급하기 위한 접두사 「0x」가 붙어 있는 것을 알 수 있습니다
이것으로 괜찮습니다.
…라고 생각했는데, 아직 좋지 않습니다.
다중 문자 대응
ord
는 1문자 밖에 변환할 수 없고, 복수문자 붙이면 에러가 되어 버립니다
좀 더 기합시켜줘…
그런 이유로 for에 전달하여 개별적으로 처리합니다.
또한, 여러 문자를 textInput.set 할 때,
각 문자에 대해 반각 공백으로 구분하십시오.
이것은 실제로 입력해 보았습니다.
알겠습니다.
할 수 있었다
이상을 정리해, 다음과 같은 함수로 해 보았습니다
import pymel.core as pm
def set_type_node_text( target_str ):
# unicode型で来なかったら変換
if not isinstance(target_str,unicode):
target_str = unicode( target_str,'cp932' )
# unicodeコードに変換、リストにためる
input_str = []
for c in target_str:
input_str.append( hex(ord(c))[2:] )
# 半角スペース区切りにして textInput.set
pm.selected()[0].textInput.set( u' '.join(input_str) )
target_str = "かきくけこ"
set_type_node_text( target_str )
런타임에 Type 노드를 선택하고 있기를 기대합니다.
이것으로 사랑이 태어난 계의 문언(?)을 주어도 괜찮다(힘들게 초현실적)
참고
유형 도구 옵션
https://knowledge.autodesk.com/ko/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/JPN/Maya-Modeling/files/GUID-92112B70-161B-4D89-A1E5-BC3D58274EFB-h html
다각형 텍스트 작성
htp // // lp. 어쨌든 sk. 코 m/ゔぃえw/마야우 L/2018/JP응/? gu d = gu D-5715F385-F27 A-49 0-A 624-CB376B669 DC
Reference
이 문제에 관하여(Maya Type 노드에 Python에서 일본어 문자 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/it_ks/items/f8e8ed422ded4ffa1e7b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이상을 정리해, 다음과 같은 함수로 해 보았습니다
import pymel.core as pm
def set_type_node_text( target_str ):
# unicode型で来なかったら変換
if not isinstance(target_str,unicode):
target_str = unicode( target_str,'cp932' )
# unicodeコードに変換、リストにためる
input_str = []
for c in target_str:
input_str.append( hex(ord(c))[2:] )
# 半角スペース区切りにして textInput.set
pm.selected()[0].textInput.set( u' '.join(input_str) )
target_str = "かきくけこ"
set_type_node_text( target_str )
런타임에 Type 노드를 선택하고 있기를 기대합니다.
이것으로 사랑이 태어난 계의 문언(?)을 주어도 괜찮다(힘들게 초현실적)
참고
유형 도구 옵션
https://knowledge.autodesk.com/ko/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/JPN/Maya-Modeling/files/GUID-92112B70-161B-4D89-A1E5-BC3D58274EFB-h html
다각형 텍스트 작성
htp // // lp. 어쨌든 sk. 코 m/ゔぃえw/마야우 L/2018/JP응/? gu d = gu D-5715F385-F27 A-49 0-A 624-CB376B669 DC
Reference
이 문제에 관하여(Maya Type 노드에 Python에서 일본어 문자 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/it_ks/items/f8e8ed422ded4ffa1e7b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Maya Type 노드에 Python에서 일본어 문자 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/it_ks/items/f8e8ed422ded4ffa1e7b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)