Commit Graph

1207 Commits

Author SHA1 Message Date
Yorik van Havre
fd658a00be Merge branch 'fix-ifc' of https://github.com/Moult/FreeCAD into Moult-fix-ifc 2019-03-27 11:57:22 -03:00
luz.paz
ad0ee86589 Misc. source comment typos 2019-03-22 10:44:14 -03:00
luz.paz
3652a8a54a Crowdin: follow-up to previous commit 2019-03-22 10:44:14 -03:00
furti
41b85bb8cd Add option to fill cut shapes with material colors
Previously when setting the "Show Fill" property of the TechDraw Arch
Section View to true, the areas where always filled with a default grey
color.

This commit adds a property called "UseMaterialColorForFill" to the
ArchSectionPlane. When set to true, it will use the objects material
color to fill the cut shapes and fall back to the default color
when no Material is found.
2019-03-22 10:36:07 -03:00
Yorik van Havre
853c0142dc Arch: Fixed materials not updating their dicts 2019-03-20 10:00:30 -03:00
Yorik van Havre
0034943f87 Arch: Fixed IFC export of rebars 2019-03-19 19:54:51 -03:00
Dion Moult
57b596e0fc Add a move base property that moves the base object instead of the object itself if true.
This is useful because it is the default case for most architectural work.
2019-03-19 14:17:39 -03:00
paullee0
8ceaab78fc Fix to Build Curve Segment Railing Wire To Follow Curve Landing
Limited by makePipeShell, curvilinear railing still usually has problems to be created

Discussions:-

https://forum.freecadweb.org/viewtopic.php?f=23&t=29358&sid=bfd05589642577079096cd8879b7a88f&start=120#p285656
https://forum.freecadweb.org/viewtopic.php?f=22&t=34081#p285607
https://forum.freecadweb.org/viewtopic.php?f=23&t=29358&start=110#p284683
2019-03-19 14:16:05 -03:00
paullee0
8af522df52 Revert "Build Curve Segment Railing Wire To Fit Landing"
This reverts commit e5989280bb8aeb73b73483c0c74d019bdb1116d6.
2019-03-19 14:16:05 -03:00
paullee0
1198f11a0b Build Curve Segment Railing Wire To Fit Landing
Limited by makePipeShell, curvilinear railing usually has problems to be created

Discussions:-
https://forum.freecadweb.org/viewtopic.php?f=23&t=29358&start=110#p284683
https://forum.freecadweb.org/viewtopic.php?f=22&t=34081#p285607
2019-03-19 14:16:05 -03:00
Yorik van Havre
bbd78986bb Fixed six.py2 -> PY2 2019-03-17 20:59:22 +01:00
Yorik van Havre
dad62a13e3 Fixed six.py2 -> PY2 2019-03-17 20:58:51 +01:00
cclauss
361c44c6dc Unicode fixes for Python3 2019-03-17 20:58:00 +01:00
Yorik van Havre
a3607ce029 Updated translations 2019-03-06 21:50:08 -03:00
Yorik van Havre
9fbae30362 Arch: Minor bugfix in IFC exporter 2019-03-06 17:04:50 -03:00
Yorik van Havre
512af24397 Revert "Merged crowdin translations" for investigation due to some problems found in the translation files...
This reverts commit cd433358b09117f234dd0a51dc2a6bfa05428867.
2019-03-02 19:17:44 -03:00
Yorik van Havre
bd93bd2494 Merged crowdin translations 2019-02-28 21:53:37 -03:00
kazan417
6a9fbb1d1a Fix cut an object with a plane feature translation
Fix not worked translation for cut an object with a plane feature in arch module.
Without this fix cut an object with a plane does not work in languages different to English.
Similar bugs was fixed earlier, but this was harder to find because of initially grayed out feature.
2019-02-28 14:43:08 -03:00
Yorik van Havre
f048df5c6f Arch: Fixed remaining encoding problems - issue #3827 2019-02-19 20:03:51 -03:00
furti
35eca42fd2 Set window visibility based on wall
Previously windows attached to walls were not hidden or shown when the
visibility of the wall changed. This commit searches for all windows
that are based on the wall and hides or unhides them.

https://forum.freecadweb.org/viewtopic.php?f=23&t=34166

fixes 3833
2019-02-16 19:31:16 -02:00
luz.paz
745f0cb3b4 Crowdin: Continuing to refine translation strings 2019-02-11 16:22:12 +01:00
furti
f1e86b3e11 Fix missing DWG imports in ArchSectionPlane.getSVG
When a DWG file is imported into FreeCAD it gets imported as a Part
object with a compound shape. One would imagine, that such an object
should be rendered like a symbol inside a TechDraw View. But when the
imported shape is inside a SectionPlane that also contains solids, the
shape is not included in the SVG.

The problem is, that getCutShapes only uses solid shapes, when a volume
was cut before. But the imported DWG is a flat 2D object and has no solids
inside.

To fix it, the getSVG method will check if an object looks like a draft
object, meaning:
 - It has a shape
 - It has no solids
 - It has no volume

When it finds such a shape, it will treat it like a draft object. So
it is displayed like a symbol in the resulting SVG.

https://forum.freecadweb.org/viewtopic.php?f=3&t=34079
2019-02-09 19:53:54 -02:00
Yorik van Havre
3cc1a327ce Updated master translation files 2019-02-08 19:16:21 -02:00
GeneGH
2549d1cfc4 Repair pythonopen in line 126 for Python3
Python 3 is fussy about match of data type for a file open or write. Python 2 does not seem to care if a string is written with a 'wb' indicating a binary type, but Python 3 flags it as an error.
2019-02-08 11:06:05 -02:00
furti
1610046905 Fix missing door symbols in getSVG
The ArchSectionPlane has a built in SVG Cache. But the door symbols and
a few other things are not inside the cache. This things not inside the
cache rely on the presence of a cutface. But this cutface was only built
when the cache is not available.

So the First invocation after the cache was cleared added the symbols.
The next invocations of the method, with a cached SVG did not calculate
the symbols again, because the cutfaces where missing.

This commit fixes it by calculating the cutfaces independent from the
cache.

Reported in https://forum.freecadweb.org/viewtopic.php?f=3&t=33987
2019-02-08 11:05:17 -02:00
Yorik van Havre
f9fbd6362d Arch: Fixed py3/encoding bug 2019-02-07 21:05:09 -02:00
paullee
4ffd00e520 Fix Right Align Railing Offset Bug 2019-02-06 10:13:37 -02:00
Yorik van Havre
34c1f38cfa Arch: Small bugfix in spaces 2019-02-04 22:35:16 -02:00
Syres916
f07f996c48 Collada Export Py3 Fixes
To allow successful Collada Export for Py3 and Py2, tested import of DAE file with colours from Blender to ensure no regression on the import side. Note: I had to download Pycollada to enable testing in Conda build.
2019-02-04 22:20:47 -02:00
Yorik van Havre
b68f571e93 Arch: Fixed encoding bug in OBJ importer 2019-02-04 13:35:00 -02:00
Yorik van Havre
303e518c93 Arch: Small bugfix in IFC exporter 2019-02-04 13:25:14 -02:00
Yorik van Havre
f74784cebc Arch: Fixed duplicate IfcSurfaceStyle names in IFC export 2019-02-01 18:38:21 -02:00
Yorik van Havre
95dda429eb Updated translations 2019-02-01 13:54:10 -02:00
luz.paz
8e15d0f888 Crowdin: Arch/ArchFloor.py grammar and refinement 2019-01-30 11:08:03 -02:00
luz.paz
b1b81f6df3 Crowdin: Arch/ArchStairs.py missing paranthesis fix 2019-01-30 11:08:03 -02:00
Dion Moult
c9d08b7311 Remove dependency on ifcopenshell at runtime and introduce new IfcVersion config 2019-01-29 21:15:44 +11:00
Dion Moult
471eb4cad3 Add json to cmakelists 2019-01-29 21:15:44 +11:00
Dion Moult
d8ca1b3eff Add ArchIFC to CMakeLists otherwise nobody will get it 2019-01-29 21:15:44 +11:00
Dion Moult
36bd51262e Refactor all IFC functions into ArchIFC and preload attributes with expressions
* The import code will manually set 2x3 attributes
 * The import code will rely on "smart" attributes for ifc 4
 * ArchSite and ArchBuildingPart now support IFC
 * IfcSite lat/lon is left alone until I better understand how coords work
2019-01-29 21:15:44 +11:00
Dion Moult
80f33e5dd9 Fix a couple of broken properties 2019-01-29 21:15:44 +11:00
Dion Moult
8f06bb29fa Migrate IfcAttributes to IfcData for backwards compatibility 2019-01-29 21:15:44 +11:00
Dion Moult
240d0a9eb6 Load JSON based on ifcopenshell schema version
This allows us to support more than one ifc version. The 2X3 jsons cannot be autogenerated and have been manually written based on the hardcoded values in the old codebase.
2019-01-29 21:15:43 +11:00
Dion Moult
85ede1c72b Bump ifc_products.json to have uppercase enums
Enums should be uppercase which matches the IFC docs. This also prevents the need to do a upper() when using these values with IfcOpenShell.
2019-01-29 21:15:43 +11:00
Dion Moult
71e5efe074 Implement import and exporting of IFC attributes 2019-01-29 21:15:43 +11:00
Dion Moult
4843a6161a Make importIFC use IfcData instead of IfcAttributes. 2019-01-29 21:15:43 +11:00
Dion Moult
6f50c6e730 Now support boolean, floats, and length IFC types instead of just enum 2019-01-29 21:15:43 +11:00
Dion Moult
445b1e219a Remove hardcoded ifc types and instead load from ifc_types.json 2019-01-29 21:15:43 +11:00
Dion Moult
8c5261a324 Update ArchComponent and importIFC to use values from the new ifc_products dictionary 2019-01-29 21:15:43 +11:00
Dion Moult
2434008c07 Add ifc_types.json which stores all of the ifc types 2019-01-29 21:15:43 +11:00
Dion Moult
479832f2bf Bump IFC products to be a dictionary instead of a list 2019-01-29 21:15:43 +11:00