当前位置: 首页>>代码示例>>C++>>正文


C++ Bedge::set_crease方法代码示例

本文整理汇总了C++中Bedge::set_crease方法的典型用法代码示例。如果您正苦于以下问题:C++ Bedge::set_crease方法的具体用法?C++ Bedge::set_crease怎么用?C++ Bedge::set_crease使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Bedge的用法示例。


在下文中一共展示了Bedge::set_crease方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: assert

int
Bedge::redefine(Bvert *v, Bvert *u)
{
    // redefine this edge, replacing v with u

    // precondition:
    //   edge does not already contain u.
    //   v is a vertex of this edge.
    //   faces have already been detached.
    //   can't duplicate an existing edge.

    assert(contains(v) && nfaces() == 0);

    if (contains(u))
        return 0;

    Bedge* dup = 0;
    if (v == _v1) {
        if ((dup = u->lookup_edge(_v2))) {
            // can't redefine, but if this is a crease edge
            // should ensure the duplicated edge is also
            if (is_crease())
                dup->set_crease(crease_val());
            return 0;
        }
        // can redefine:
        *_v1 -= this;     // say bye to old _v1
        _v1 = u;          // record new _v1
        *_v1 += this;     // say hi to new _v1
    } else if (v == _v2) {
        // see comments above
        if ((dup = u->lookup_edge(_v1))) {
            if (is_crease())
                dup->set_crease(crease_val());
            return 0;
        }
        *_v2 -= this;
        _v2 = u;
        *_v2 += this;
    } else assert(0);

    geometry_changed();

    return 1;
}
开发者ID:karmakat,项目名称:jot-lib,代码行数:45,代码来源:bedge.C


注:本文中的Bedge::set_crease方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。