View Issue Details

IDProjectCategoryView StatusLast Update
0000910FreeCADBugpublic2012-12-18 12:34
Reportermirage335 Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Fixed in Version0.13 
Summary0000910: Circles Extrude Only Surfaces
DescriptionExtruding a circle always produces a surface, even when the _ button is checked.

Tested against FreeCAD_sf_master commit 3987ec36b529e877ec80fd69ebab877c8a8ba2ea .

Steps to reproduce:
Open FreeCAD.
Create new document and XY plane sketch.
Draw a circle.
Extrude circle, with "Create solid" checked.
Observe the ends of the cylinder are uncapped, indicating a surface.
TagsNo tags attached.
FreeCAD Information

Activities

helo10

2012-12-08 09:24

reporter   ~0002627

Cannot reproduce this on:
Ubuntu 12.04.1 LTS
Version: 0.13.1733 (Git)

wmayer

2012-12-08 09:54

administrator   ~0002628

Cannot reproduce this either. You should upload a test file which doesn't work for you so that we can have a closer look.

normandc

2012-12-12 00:42

manager   ~0002634

Last edited: 2012-12-12 00:43

When reporting bugs you need to be as clear as possible explaining the steps to reproduce. Your statement "draw a circle" is too vague: there are 3 ways to do that in FreeCAD.

1. Creating a Draft Circle with the Draft workbench
2. Creating a Sketch from the Sketcher/Part Design workbench, with a circle in it
3. In the Part workbench use the "Create primitives..." icon or menu

Of these 3 cases, 1 and 2 succeed in creating a solid without the need to check the "create solid" checkbox. But 3 fails to do so even with create solid checked.

Also it's useful to paste the complete content of the About FreeCAD menu.

OS: Ubuntu 12.04.1 LTS
Platform: 64-bit
Version: 0.13.1757 (Git)
Branch: master
Hash: 22cfda67defb281ccc707ed5c0b9e56584ec4982
Python version: 2.7.3
Qt version: 4.8.1
Coin version: 3.1.3
SoQt version: 1.5.0
OCC version: 6.5.0

jmaustpc

2012-12-17 10:57

manager   ~0002648

Hi guys
If you read between the lines I think I can see what he has done
He has not told you to change work benches but if you read his instructions they seem to imply that he is doing so.

Start in PartDesign wb,
create a new document,
create a new sketch on the xy plane
add a circle within that sketch while in edit mode, hence with sketcher
then close edit mode for the sketch
then change to part work bench
then select the sketch (i.e. the circle)
then use the Part WB Extrude tool (not the Part Design Pad tool)
and then even with "create solid" ticked, you get a tube i.e. a surface

Part Extrude should create a surface from a circle and a solid from a plane, so that seems OK but what is the create solid tick box for? I can't seem to get it to anything.




OS: Ubuntu 12.04.1 LTS
Platform: 64-bit
Version: 0.13.1768 (Git)
Branch: master
Hash: 4344df8595c6509271a16e989c78095f66dba3c2
Python version: 2.7.3
Qt version: 4.8.1
Coin version: 3.1.3
SoQt version: 1.5.0
OCC version: 6.5.0

wmayer

2012-12-17 19:38

administrator   ~0002655

That's exactly what I did and it creates a solid. But there is indeed a problem. When changing the extrusion length afterwards (the Dir property) or creating the a new extruded shape then it's not a solid anymore.

I remember we had this problem on the pad/pocket functions too. The solution is make an explicit copy of the old shape. But basically this must be a bug in OCC.

jmaustpc

2012-12-18 00:05

manager   ~0002657

Last edited: 2012-12-18 00:09

Werner, I had another go after reading your response. What seems to be happening for me is that it only creates a solid the FIRST time a sketch is used.

So my post above is not quite correct.

As you said if you adjust the extrusion parameters after construction it reverts to a surface.

1) do the above to get the circle in a sketch
now if you tick create solid box the first time you extrude it will create a solid.
2)if you now try to create further extrusions from the same sketch either immediately or by closing the extrusion task and starting it again you always get only a surface even with create solid ticked.
3) if you select the sketch, then go to the Edit menu...Duplicate selection and then you get a new copied sketch. This new copied sketch will work the same as an entirely new sketch made from the sketcher, in that it will only make a solid if you tick the box and extrude the first time.
4) interestingly if you start fresh again, make a sketch with a circle make an extrusion of either solid or surface, ... then delete the extrusion but not delete the sketch, and try again, it will no longer create the solid! Its almost like the sketch gets tainted or something!
5)If I create a circle in Part WB create primitives and try to extrude it, it will not create a solid.


From my memory I thought the code for Part extrusion worked something like this. If create solid box is ticked, first FreeCAD looks to see what type of shape you have selected, then if it is an edge or wire, it first tries to create a surface from the edge/wire and then extrudes that, hence gives you a solid not an extruded surface? If I am correct so far, then perhaps the problem is that FreeCAD is only doing this shape type check then upgrade to face/surface under some limited circumstances. Perhaps FreeCAD is somehow bypassing this logic under some circumstances? Perhaps FreeCAD is not checking to see if this tick box is ticked?


Jim

wmayer

2012-12-18 12:34

administrator   ~0002658

git show f176811

Issue History

Date Modified Username Field Change
2012-12-07 21:18 mirage335 New Issue
2012-12-08 09:24 helo10 Note Added: 0002627
2012-12-08 09:54 wmayer Note Added: 0002628
2012-12-12 00:42 normandc Note Added: 0002634
2012-12-12 00:43 normandc Note Edited: 0002634
2012-12-17 10:57 jmaustpc Note Added: 0002648
2012-12-17 19:38 wmayer Note Added: 0002655
2012-12-18 00:05 jmaustpc Note Added: 0002657
2012-12-18 00:09 jmaustpc Note Edited: 0002657
2012-12-18 12:34 wmayer Note Added: 0002658
2012-12-18 12:34 wmayer Status new => closed
2012-12-18 12:34 wmayer Resolution open => fixed
2012-12-18 12:34 wmayer Fixed in Version => 0.13