RhinoCommon获取对象的属性文本

如何通过RhinoCommon获取选中对象的属性文本的键和值呢?

https://github.com/mcneel/RhinoUserText

貌似c#代码,python代码能获取吗?

抱歉没有找到现存的 Python 相关内容能提供 :joy:
你能读懂前面分享的内容,也可以尝试 Python中调用 Rhino.common 中 GetUserStrings method :point_down:
https://developer.rhino3d.com/api/rhinocommon/rhino.docobjects.objectattributes/getuserstrings?version=8.x

尝试了一下,什么都不选的情况下也能打印出结果,不确定是什么类型也遍历不出来结果呢

可以的,写法一样。
你的代码是自己调用了无参构造函数创建了一个 ObjectAttributes对象,所以也能打印。你要获取物体的UserStrings就要从物体上去获取。比如这样写。

#coding=utf-8
import rhinoscriptsyntax as rs
import Rhino.RhinoDoc as rr

doc = rr.ActiveDoc

obj_guid = rs.GetObject("选取要获取键值的物体")
obj_geo = doc.Objects.FindId(obj_guid)

user_string = obj_geo.Attributes.GetUserStrings()
print user_string.AllKeys
print user_string["123"]

1 个赞

好的月神,明白了感谢!!!