[G+smo]细分网格时控制点的排序

细分方案:

for (int i = 0; i < numElevate; ++i)
{
patches -> degreeElevate();
}

for (int i = 0; i < numHref; ++i)
{
patches -> uniformRefine();
}

升阶和加密的次序影响最终结果。


GISMO_DEBUG: 

Patch 0: control points  

 0 100   0

  0  50   0

  0   0   0


Refine 1 time:

GISMO_DEBUG: Patch 0: control points   

 0 100   0
  0  75   0
  0  25   0
  0   0   0


refine twice:

GISMO_DEBUG: Patch 0: control points    0  100    0
   0 87.5    0
   0 62.5    0
   0 37.5    0
   0 12.5    0
   0    0    0

degree elevate 1:

GISMO_DEBUG: Patch 0: control points       0     100       0
      0 66.6667       0
      0 33.3333       0
      0       0       0

degree elevate 2:

GISMO_DEBUG: Patch 0: control points   0 100   0
  0  75   0
  0  50   0
  0  25   0
  0   0   0

degree elevate 1, refine 1

GISMO_DEBUG: Patch 0: control points       0     100       0
      0 83.3333       0
      0      50       0
      0 16.6667       0
      0       0       0

 refine 1, degree elevate 1

GISMO_DEBUG: Patch 0: control points       0     100       0
      0 83.3333       0
      0 66.6667       0
      0 33.3333       0
      0 16.6667       0
      0       0       0


阅读更多
个人分类: G+smo
想对作者说点什么? 我来说一句

loop网格细分算法

2014年03月27日 241KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭