Page MenuHome

Knife tool freeze up blender
Closed, InvalidPublic

Description

System Information
Win 8.1 x64, GTX970m

Blender Version
Broken: 2.79 5bd8ac9 2017-09-11 10^43

Short description of error
Knife tool freeze up blender

Exact steps for others to reproduce the error

Open file, try to cut violet beam with knife tool. It works fine on green beam, but violet one freeze up blender. Has checked it on several machines. Same steps in 2.76 crash blender

Details

Type
Bug

Event Timeline

LazyDodo (LazyDodo) triaged this task as Confirmed, Medium priority.

not sure what's wrong, but ti's an easy repro,

>	blender.exe!bmesh_disk_edge_next(const BMEdge * e, const BMVert * v) Line 67	C
 	blender.exe!bmesh_disk_faceedge_find_next(const BMEdge * e, const BMVert * v) Line 374	C
 	blender.exe!bmiter__face_of_vert_step(BMIter__face_of_vert * iter) Line 506	C
 	blender.exe!BM_iter_step(BMIter * iter) Line 44	C
 	blender.exe!BM_iter_new(BMIter * iter, BMesh * bm, const unsigned char itype, void * data) Line 178	C
 	blender.exe!get_bm_knife_vert(KnifeTool_OpData * kcd, BMVert * v) Line 444	C
 	blender.exe!get_bm_knife_edge(KnifeTool_OpData * kcd, BMEdge * e) Line 462	C
 	blender.exe!knife_get_face_kedges(KnifeTool_OpData * kcd, BMFace * f) Line 554	C
 	blender.exe!knife_find_line_hits(KnifeTool_OpData * kcd) Line 1602	C
 	blender.exe!knife_update_active(KnifeTool_OpData * kcd) Line 2213	C
 	blender.exe!knifetool_update_mval(KnifeTool_OpData * kcd, const float * mval) Line 2560	C
 	blender.exe!knifetool_update_mval_i(KnifeTool_OpData * kcd, const int * mval_i) Line 2569	C
 	blender.exe!knifetool_modal(bContext * C, wmOperator * op, const wmEvent * event) Line 2914	C
 	blender.exe!wm_handler_operator_call(bContext * C, ListBase * handlers, wmEventHandler * handler, wmEvent * event, PointerRNA * properties) Line 1727	C
 	blender.exe!wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Line 2145	C
 	blender.exe!wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Line 2184	C
 	blender.exe!wm_event_do_handlers(bContext * C) Line 2457	C
 	blender.exe!WM_main(bContext * C) Line 511	C
 	blender.exe!main(int argc, const unsigned char * * UNUSED_argv_c) Line 529	C
Campbell Barton (campbellbarton) closed this task as Invalid.

This is a corrupt mesh, to find to root cause we need to find how you managed to create a mesh with invalid geometry.

In the terminal you can do:

C.object.data.validate(True)
BKE_mesh_validate_arrays: verts(96), edges(257), loops(489), polygons(163)
    Poly 156 has duplicated vert reference at corner (1)
    Loop 468 is unused.
    Loop 469 is unused.
    Loop 470 is unused.

Closing this report, please create a new report if you find how a the invalid geometry was created.

Closing this report, please create a new report if you find how a the invalid geometry was created.

I see. This is imported mesh (.ifc) with IfcOpenShell which was exported directly from TEKLA.
I thought that knife tool could handle invalid geometry wtih cut through option on.

@Stanislav Ovcharov (Stan1), the knife tool can handle any geometry.

The actual mesh is corrupt in this case - situations like an edge using the same vertex in each end aren't supported.

This is a bug in the importer, please report the issue to: https://github.com/IfcOpenShell/IfcOpenShell

It should run mesh.validate() if the data may be invalid.

@Stanislav Ovcharov (Stan1) If possible, would you mind uploading the IFC (or at least that particular element) as well so that we can have a look at what caused the invalid mesh in the first place? Thanks in advance.

@Stanislav Ovcharov (Stan1) If possible, would you mind uploading the IFC (or at least that particular element) as well so that we can have a look at what caused the invalid mesh in the first place? Thanks in advance.

well, this is kinda hard to do because of I get already exported model from Tekla and the whole model is confidential. So I can't to upload it, at least public. And I have not got Tekla to cut out th piece of the model. I could send it directly to you if you not going to share it public.

I could send it directly to you if you not going to share it public.

@Stanislav Ovcharov (Stan1) Please :) models@ifcopenshell.org I will treat it confidentially. Thanks.

I could send it directly to you if you not going to share it public.

@Stanislav Ovcharov (Stan1) Please :) models@ifcopenshell.org I will treat it confidentially. Thanks.

So, was it helpful?