При первом сохранении он один, но когда перезаписываешь, то получаеются два и равновесные
void MESH_OT_inset(wmOperatorType *ot){ PropertyRNA *prop; /* identifiers */ ot->name = "Inset Faces"; ot->idname = "MESH_OT_inset"; ot->description = "Inset new faces into selected faces"; /* api callbacks */ ot->invoke = edbm_inset_invoke; ot->modal = edbm_inset_modal; ot->exec = edbm_inset_exec; ot->cancel = edbm_inset_cancel; ot->poll = ED_operator_editmesh; /* flags */ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO | OPTYPE_GRAB_CURSOR | OPTYPE_BLOCKING; /* properties */ RNA_def_boolean(ot->srna, "use_boundary", true, "Boundary", "Inset face boundaries"); RNA_def_boolean(ot->srna, "use_even_offset", true, "Offset Even", "Scale the offset to give more even thickness"); RNA_def_boolean(ot->srna, "use_relative_offset", false, "Offset Relative", "Scale the offset by surrounding geometry"); RNA_def_boolean(ot->srna, "use_edge_rail", false, "Edge Rail", "Inset the region along existing edges"); prop = RNA_def_float_distance(ot->srna, "thickness", 0.01f, 0.0f, 1e12f, "Thickness", "", 0.0f, 10.0f); /* use 1 rather then 10 for max else dragging the button moves too far */ RNA_def_property_ui_range(prop, 0.0, 1.0, 0.01, 4); prop = RNA_def_float_distance(ot->srna, "depth", 0.0f, -1e12f, 1e12f, "Depth", "", -10.0f, 10.0f); RNA_def_property_ui_range(prop, -10.0f, 10.0f, 0.01, 4); RNA_def_boolean(ot->srna, "use_outset", false, "Outset", "Outset rather than inset"); RNA_def_boolean(ot->srna, "use_select_inset", false, "Select Outer", "Select the new inset faces"); RNA_def_boolean(ot->srna, "use_individual", false, "Individual", "Individual Face Inset"); RNA_def_boolean(ot->srna, "use_interpolate", true, "Interpolate", "Blend face data across the inset");}
Как нарисовать усечённый конус
пол тора
четверть сферы
А вот как отредактировать объект после его создания