我本想通过 曲面的 平面 自动获取一个曲面的 U V线
发现 默认生产出来的曲面 是正常 但是如果把曲面法线 正反反转后 就发现rhino视图的 UV线还是正常的 但是 代码的 曲面平面 X Y 轴 也自动反转了 这导致我无法准确判断 曲面的 UV 线 我用了 RhinoCommon 函数 也是一样的问题 ,请问有什么规律可循吗?
# coding=utf-8
import rhinoscriptsyntax as rs
import Rhino
def CreatePlaneLine(plane,Pts,dis):
def movepointdis(point, vector, distance,color):
vector = rs.VectorUnitize(vector)
new_point = point + vector * distance
Line = rs.AddLine(point, new_point)
rs.ObjectColor( Line,color)
return Line
Line_U = movepointdis(Pts,plane.XAxis,dis,(255, 0, 0))
Line_V = movepointdis(Pts,plane.YAxis,dis,(0, 255, 0))
Line_Z = movepointdis(Pts,plane.ZAxis,dis,(0, 0, 255))
get_face = rs.GetObject("请选择一个曲面", rs.filter.surface)
if get_face:
domainU = rs.SurfaceDomain(get_face, 0)
domainV = rs.SurfaceDomain(get_face, 1)
u = (domainU[1]+domainU[0])/2.0
v = (domainV[1]+domainV[0])/2.0
point = rs.EvaluateSurface(get_face, u, v)
plane_1 = rs.SurfaceFrame(get_face, (u,v))
#get_face2 = rs.coercesurface(get_face)
#plane_2 = (get_face2.FrameAt(u,v))[1]
CreatePlaneLine(plane_1,point,2)