我正在将 Python 脚本转换为 C#,并且在此过程中偶尔会遇到问题。这一次是将一个点从一个位置重新定位到另一个位置。在 python 脚本中,它是我不知道如何转换的方法的第二行。我已经查看了 Rhino 文档,但我仍然感到困惑。
def move(self):
self.trailPts.append(self.pos)
self.pos = rs.PointCoordinates(rs.MoveObject(self.id, self.vec))
这是我目前所处的位置:
Transform trans = new Transform(Transform.Translation(Vec));
Pos = PointID.Transform(Pos, trans, true);
但这是不正确的。我在第 2 行遇到了 Transform 的过载错误。任何帮助都会很棒。谢谢!
这也是我的 C# 构造函数:
public Agent(Point3d pos, Vector3d vec, Point3d pointID, List<Point3d> listOfAgents, List<Point3d> navPoints, List<Circle> pipeProfiles)
{
Pos = pos;
Vec = vec;
PointID = pointID;
ListOfAgents = listOfAgents;
NavPoints = navPoints;
PipeProfiles = pipeProfiles;
TrailPoints.Add(new Point3d(Pos));
}
和原来的python构造函数:
def __init__(self, POS, VEC, POINTID, LISTOFAGENTS, NAVPOINTS, PIPEPROFILES):
self.pos = POS
self.vec = VEC
self.id = POINTID
self.list = LISTOFAGENTS
self.nav = NAVPOINTS
self.trailPts = []
self.trailPts.append(self.pos)
self.trailID = "empty"
self.pipeProfiles = PIPEPROFILES
print("made an agent")