extern "C" void rt_bot_brep(ON_Brep **b, const struct rt_db_internal *ip, const struct bn_tol *tol) { struct rt_db_internal *tmp_internal; struct rt_tess_tol ttmptol; BU_ALLOC(tmp_internal, struct rt_db_internal); RT_DB_INTERNAL_INIT(tmp_internal); ttmptol.abs = 0; ttmptol.rel = 0.01; ttmptol.norm = 0; const struct rt_tess_tol *ttol = &ttmptol; struct model *botm = nmg_mm(); struct nmgregion *botr; tmp_internal->idb_ptr = (void *)ip->idb_ptr; (void)rt_bot_tess(&botr, botm, tmp_internal, ttol, tol); tmp_internal->idb_ptr = (void *)botm; rt_nmg_brep(b, tmp_internal, tol); FREE_MODEL(botm); bu_free(tmp_internal, "free temporary rt_db_internal"); }
/** * R T _ E B M _ B R E P */ extern "C" void rt_ebm_brep(ON_Brep **b, const struct rt_db_internal *ip, const struct bn_tol *tol) { struct rt_db_internal *tmp_internal; struct rt_tess_tol ttmptol; BU_ALLOC(tmp_internal, struct rt_db_internal); RT_DB_INTERNAL_INIT(tmp_internal); ttmptol.abs = 0; ttmptol.rel = 0.01; ttmptol.norm = 0; const struct rt_tess_tol *ttol = &ttmptol; struct model *ebmm = nmg_mm(); struct nmgregion *ebmr; tmp_internal->idb_ptr = (genptr_t)ip->idb_ptr; rt_ebm_tess(&ebmr, ebmm, tmp_internal, ttol, tol); tmp_internal->idb_ptr = (genptr_t)ebmm; rt_nmg_brep(b, tmp_internal, tol); FREE_MODEL(ebmm); bu_free(tmp_internal, "free temporary rt_db_internal"); }