NCF参数化建筑论坛

标题: 新人求助有关Ghpython的使用问题 [打印本页]

作者: termination    时间: 2018-12-11 17:10
标题: 新人求助有关Ghpython的使用问题
[attach]50977[/attach][attach]50978[/attach][attach]50979[/attach][attach]50980[/attach]
我想局部拉伸曲面,在网上找的代码,还是报错了,Ghpython完全不会设置,求指点一下




def GetDistance(self):
    points=self.GetPoints()
    distance={}
    for key in points:
        dist=self._plane.DistanceTo(points[key])
        distance[key]=dist
    return distance
def Positive(self):
    distance=self.GetDistance()
    positive=[]
    for key in distance:
          if distance[key]>=0.0:
              positive.append(key)
    return positive
def Negative(self):
   distance=self.GetDistance()
   negative=[]
   for key in distance:
       if distance[key]<0.0:
           negative.append(key)
   return negative
   if len(plane)==1:
     s=stretch (points,plane[0])
     pt=s .GetPoints()
     dist=s.GetDistance()
     n=s .GetNormal()
     if NorP==1:
         keys=s .Positive()
         for k in keys:
            ptNew=pt[k]+(level-1.0)*n*dist[k]
            pt[k] =ptNew
     else:
         keys=s.Negative()
         for k in keys:
            ptNew=pt[k]+(level-1.0)*n*dist[k]
            pt[k]=ptNew
   elif len(plane)==2:
     if (plane[0].Normal==plane[1].Normal)or(plane[0].Normal==plane[1].Normal.Idegate()):
        plane[1].ZAxis=rg.Vector3d.Multiply(-1.0,plane[0].Normal)
        ppDist=abs(plane[0].DistanceTo(plane[1].PointAt(0.0,0.0)))
   kl=[k for k in positive if k in positivel]
   k2=[k for k in negative if k in negativel]
   if  len(k1)!=0:
       for k in k1:
          ptNew=pt[k]+(level-1.0)*n*dist[k]
          pt[k]=ptNew
       for m in [m for m in positive if not m in positivel]:
          ptNew=pt[m]+(level-1.0)*n*ppDist
          pt[m]=ptNew
   else:
       for k in k2:
          ptNew=pt[k]+(level-1.0)*n*dist[k]
          pt[k]=ptNew
       for m in [m for m in negative if not m in negativel]:
          ptNew=pt[m]-(level-1.0)*n*ppDist
          pt[m]=ptNew
   a=[pt[k] for k in pt]


[attach]50981[/attach][attach]50982[/attach][attach]50983[/attach][attach]50984[/attach]这是我找的教程,照着做了,还是有问题,作业被卡在这里好久了,要交不上了


作者: 奇奇狗    时间: 2018-12-11 19:41
如果你想做极小曲面的话,你可以搜索插件millipede,或许会有帮助。
作者: termination    时间: 2018-12-11 19:47
奇奇狗 发表于 2018-12-11 19:41
如果你想做极小曲面的话,你可以搜索插件millipede,或许会有帮助。

我想拉伸挤压他的局部造型,曲面本身已经做好了,就是不知道怎么去调整
作者: 奇奇狗    时间: 2018-12-11 20:40
不好意思啊,没看完就回复了。你能发发你的电池吗?你的python输入端有更改英文名称吗?


                               
登录/注册后可看大图


作者: termination    时间: 2018-12-11 21:20
奇奇狗 发表于 2018-12-11 20:40
不好意思啊,没看完就回复了。你能发发你的电池吗?你的python输入端有更改英文名称吗?

[attach]50986[/attach]
英文改名我试过了不行啊


作者: termination    时间: 2018-12-11 21:22
我只想要这种能局部挤压拉伸的方法,不限定用Ghpython,别的方法也可以
作者: sharlson    时间: 2018-12-11 22:13
termination 发表于 2018-12-11 21:22
我只想要这种能局部挤压拉伸的方法,不限定用Ghpython,别的方法也可以

GH1.0里的Stretch
作者: termination    时间: 2018-12-11 22:29
sharlson 发表于 2018-12-11 22:13
GH1.0里的Stretch

1.0都出了?,要卸载原版还是覆盖就好
作者: 月之眼    时间: 2018-12-12 10:59
termination 发表于 2018-12-11 22:29
1.0都出了?,要卸载原版还是覆盖就好

rhino的CageEdit指令很好用的,就和调控制点一样调极小曲面。上传两个我以前做的
作者: termination    时间: 2018-12-12 13:44
月之眼 发表于 2018-12-12 10:59
rhino的CageEdit指令很好用的,就和调控制点一样调极小曲面。上传两个我以前做的

哇⊙∀⊙!,竟然还有这种操作,谢谢月神&#128513;
作者: candyncandy    时间: 2019-1-1 17:20
你好!请问一下 教程叫什么名字呀?最近要学习,一点头绪都没有。。。多谢!




欢迎光临 NCF参数化建筑论坛 (http://bbs.ncf-china.com/) Powered by Discuz! X3.2