Added kabeja as alternative DXF to SVG parser
This commit is contained in:
@ -0,0 +1,92 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<parser class="org.kabeja.parser.DXFParser" xmlns="http://kabeja.org/parser/1.0">
|
||||
<handler class="org.kabeja.parser.DXFHeaderSectionHandler"/>
|
||||
<handler class="org.kabeja.parser.DXFTableSectionHandler">
|
||||
<handlers>
|
||||
<handler class="org.kabeja.parser.table.DXFLayerTableHandler"/>
|
||||
<handler class="org.kabeja.parser.table.DXFLineTypeTableHandler"/>
|
||||
<handler class="org.kabeja.parser.table.DXFViewTableHandler"/>
|
||||
<handler class="org.kabeja.parser.table.DXFViewportTableHandler"/>
|
||||
<handler class="org.kabeja.parser.table.DXFStyleTableHandler"/>
|
||||
<handler class="org.kabeja.parser.table.DXFDimensionStyleTableHandler"/>
|
||||
</handlers>
|
||||
</handler>
|
||||
|
||||
<!--+
|
||||
| The block and the entities handler use the same sub handlers.
|
||||
| If you have create a parser for an entity add the parser in
|
||||
| both sections.
|
||||
+-->
|
||||
|
||||
<handler class="org.kabeja.parser.DXFBlocksSectionHandler">
|
||||
<handlers>
|
||||
<handler class="org.kabeja.parser.entities.DXFArcHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFCircleHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFEllipseHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFInsertHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFLineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFPolylineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFLWPolylineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFSolidHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFTextHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFAttribHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFMTextHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFTraceHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFDimensionHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFImageHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXF3DFaceHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFRayHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFXLineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFRegionHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFBodyHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXF3DSolidHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFSplineHandler"/>
|
||||
</handlers>
|
||||
</handler>
|
||||
|
||||
<!--+
|
||||
|The entity section parser part
|
||||
|
|
||||
+-->
|
||||
|
||||
|
||||
<handler class="org.kabeja.parser.DXFEntitiesSectionHandler">
|
||||
<handlers>
|
||||
<handler class="org.kabeja.parser.entities.DXFArcHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFCircleHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFEllipseHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFInsertHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFLineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFPolylineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFLWPolylineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFSolidHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFTextHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFAttribHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFMTextHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFTraceHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFDimensionHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFImageHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXF3DFaceHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFRayHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFXLineHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFRegionHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFBodyHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXF3DSolidHandler"/>
|
||||
<handler class="org.kabeja.parser.entities.DXFSplineHandler"/>
|
||||
</handlers>
|
||||
</handler>
|
||||
|
||||
|
||||
<!--+
|
||||
|The objects section parser part
|
||||
|
|
||||
+-->
|
||||
|
||||
|
||||
<handler class="org.kabeja.parser.DXFObjectsSectionHandler">
|
||||
<handlers>
|
||||
<handler class="org.kabeja.parser.objects.DXFImageDefHandler"/>
|
||||
</handlers>
|
||||
</handler>
|
||||
|
||||
</parser>
|
180
extensions/fablabchemnitz/dxfdwgimporter/kabeja/conf/process.xml
Normal file
180
extensions/fablabchemnitz/dxfdwgimporter/kabeja/conf/process.xml
Normal file
@ -0,0 +1,180 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<processing xmlns="http://kabeja.org/processing/1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<!--+
|
||||
| The processing configuration
|
||||
+-->
|
||||
<configuration>
|
||||
<!--+
|
||||
| If you want to configure the parser you can change the parser.xml and use it here or
|
||||
| register your own parser for other input formats
|
||||
| <parsers>
|
||||
| <xi:include href="conf/parser.xml"/>
|
||||
| </parsers>
|
||||
+-->
|
||||
<postprocessors>
|
||||
<postprocessor class="org.kabeja.processing.BoundsDebugger" name="bounds.debugger"/>
|
||||
<!-- removes all image entities if the images file does not exists -->
|
||||
<postprocessor class="org.kabeja.processing.ImageFilter" name="image.filter"/>
|
||||
<postprocessor class="org.kabeja.processing.BoundsFilter" name="bounds.filter"/>
|
||||
<!-- allows you to remove layers from the draft and merge all layers to one -->
|
||||
<postprocessor class="org.kabeja.processing.LayerFilter" name="layer.filter"/>
|
||||
<!-- converts lines,arcs and polylines to a single polyline, if they have the same points -->
|
||||
<postprocessor class="org.kabeja.processing.PolylineConverter" name="polyline.converter"/>
|
||||
<!-- removes invisible entities -->
|
||||
<postprocessor class="org.kabeja.processing.VisibilityFilter" name="visibility.filter"/>
|
||||
|
||||
|
||||
|
||||
<postprocessor class="org.kabeja.processing.ScriptablePostProcessor" name="js"/>
|
||||
</postprocessors>
|
||||
|
||||
<filters>
|
||||
|
||||
<filter class="org.kabeja.batik.tools.ImageBase64Encoder" name="image"/>
|
||||
<filter class="org.kabeja.svg.FixedStrokeWidthFilter" name="fixed-stroke-width"/>
|
||||
<filter class="org.kabeja.svg.RootLayerFilter" name="rootlayer.filter"/>
|
||||
<filter class="org.kabeja.svg.StyleAttributeFilter" name="styleattribute.filter"/>
|
||||
<filter class="org.kabeja.xslt.SAXXSLTFilter" name="xslt">
|
||||
<property name="http://xml.org/sax/features/is-standalone/" value="true"/>
|
||||
</filter>
|
||||
</filters>
|
||||
|
||||
<serializers>
|
||||
<serializer class="org.kabeja.xml.SAXPrettyOutputter" name="svg"/>
|
||||
<serializer class="org.kabeja.batik.tools.SAXJPEGSerializer" name="jpeg"/>
|
||||
<serializer class="org.kabeja.batik.tools.SAXPNGSerializer" name="png"/>
|
||||
<serializer class="org.kabeja.batik.tools.SAXTIFFSerializer" name="tiff"/>
|
||||
<serializer class="org.kabeja.batik.tools.SAXPDFSerializer" name="pdf">
|
||||
<!--+
|
||||
| *example configuration works with jpeg/png/tiff also
|
||||
|
|
||||
| * setup a paper sizes A0-A6
|
||||
| <property name="paper" value="A1"/>
|
||||
|
|
||||
| * setup own paper size by mm/in/px/cm
|
||||
| <property name="width" value="100mm"/>
|
||||
| <property name="height" value="50mm"/>
|
||||
|
|
||||
| * dpi setting
|
||||
| <property name="dpi" value="300"/>
|
||||
|
|
||||
| * change the orientation
|
||||
| <property name="orientation" value="landscape"/>
|
||||
+-->
|
||||
</serializer>
|
||||
<serializer class="org.kabeja.xslt.SAXXMLSerializer" name="xml"/>
|
||||
</serializers>
|
||||
|
||||
<generators>
|
||||
|
||||
<generator class="org.kabeja.svg.SVGGenerator" name="svg">
|
||||
<!--+
|
||||
| possible values are:
|
||||
| *) modelspace
|
||||
| *) paperspace
|
||||
| *) kabeja -> the default
|
||||
+-->
|
||||
<property name="bounds-rule" value="kabeja"/>
|
||||
|
||||
<!--+
|
||||
| * you can choose a layout
|
||||
| by name:
|
||||
| <property name="output-style-name" value="myLayout2"/>
|
||||
| or the default "Model"-layout will be used
|
||||
+-->
|
||||
<property name="output-style" value="layout"/>
|
||||
|
||||
<!--+
|
||||
| you can setup an own stroke width for the draft
|
||||
| this will override the draft line weight
|
||||
| <property name="stroke-width" value="0.02%"/>
|
||||
+-->
|
||||
</generator>
|
||||
</generators>
|
||||
|
||||
</configuration>
|
||||
|
||||
<!--+
|
||||
| The processing pipelines
|
||||
+-->
|
||||
|
||||
<pipelines>
|
||||
|
||||
|
||||
<pipeline name="Inkscape" description="Converts the draft to SVG using the inkscape import filter settings.">
|
||||
<generate name="svg"/>
|
||||
<filter name="rootlayer.filter"/>
|
||||
<filter name="styleattribute.filter"/>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="svg" description="Converts the draft to SVG">
|
||||
<generate name="svg"/>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="debug" description="Helps to debug false bounds">
|
||||
<postprocess name="bounds.debugger"/>
|
||||
<generate name="svg"/>
|
||||
<filter name="image"/>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="jpeg">
|
||||
<generate name="svg"/>
|
||||
<serialize name="jpeg">
|
||||
<property name="width" value="1024"/>
|
||||
<property name="height" value="768"/>
|
||||
</serialize>
|
||||
</pipeline>
|
||||
<pipeline name="png">
|
||||
<generate name="svg"/>
|
||||
<serialize name="png">
|
||||
<property name="width" value="1024"/>
|
||||
<property name="height" value="768"/>
|
||||
</serialize>
|
||||
</pipeline>
|
||||
<pipeline name="tiff">
|
||||
<generate name="svg"/>
|
||||
<serialize name="tiff">
|
||||
<property name="width" value="1024"/>
|
||||
<property name="height" value="768"/>
|
||||
</serialize>
|
||||
</pipeline>
|
||||
<pipeline name="pdf">
|
||||
<generate name="svg"/>
|
||||
<serialize name="pdf"/>
|
||||
</pipeline>
|
||||
<pipeline name="font" description="Convert to SVG and tries to embed fonts">
|
||||
<generate name="svg"/>
|
||||
<filter name="xslt">
|
||||
<property name="stylesheet" value="../tools/xsl/embedfont.xsl"/>
|
||||
</filter>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="embed" description="Convert to SVG and tries to embed fonts and images">
|
||||
<generate name="svg"/>
|
||||
<postprocess name="image.filter"/>
|
||||
<generate name="svg"/>
|
||||
<filter name="image"/>
|
||||
<filter name="xslt">
|
||||
<property name="stylesheet" value="../tools/xsl/embedfont.xsl"/>
|
||||
<property name="http://xml.org/sax/features/is-standalone/" value="true"/>
|
||||
<property name="http://xml.org/sax/features/external-general-entities" value="false"/>
|
||||
</filter>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="mozilla" description="Generate a Mozilla 1.5.X compatible SVG (change all to a fixed stoke-width)">
|
||||
<generate name="svg"/>
|
||||
<!-- Mozilla based browser only render svg with a
|
||||
fixed stroke-width, a percent value will cause a
|
||||
crashing Mozilla -->
|
||||
<filter name="fixed-stroke-width"/>
|
||||
<serialize name="svg"/>
|
||||
</pipeline>
|
||||
<pipeline name="scripting" desription="Invokes the javascipt postprocessor before converting to SVG">
|
||||
<generate name="svg"/>
|
||||
<postprocess name="js">
|
||||
<property name="src" value="scripts/layoutDebug.js"/>
|
||||
</postprocess>
|
||||
<serialize name="pdf"/>
|
||||
</pipeline>
|
||||
</pipelines>
|
||||
</processing>
|
18
extensions/fablabchemnitz/dxfdwgimporter/kabeja/conf/ui.xml
Normal file
18
extensions/fablabchemnitz/dxfdwgimporter/kabeja/conf/ui.xml
Normal file
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<uiconfiguration xmlns="http://kabeja.org/processing/ui/1.0">
|
||||
<components>
|
||||
<component class="org.kabeja.ui.impl.ProcessingUI"/>
|
||||
<component class="org.kabeja.ui.impl.ProcessingRunViewComponent"/>
|
||||
<!-- <component class="org.kabeja.ui.impl.ProcessingEditorViewComponent"/> -->
|
||||
<component class="org.kabeja.svg.ui.SVGViewUIComponent"/>
|
||||
<component class="org.kabeja.processing.scripting.impl.JavaScriptShell"/>
|
||||
<component class="org.kabeja.svg.ui.OutputSettingsUI"/>
|
||||
<component class="dk.abj.svg.action.ZoomSelectionActionInterceptor"/>
|
||||
<component class="dk.abj.svg.action.ZoomImageActionInteractor"/>
|
||||
<component class="dk.abj.svg.action.PanActionInterceptor"/>
|
||||
<component class="dk.abj.svg.action.CenterAction"/>
|
||||
<component class="dk.abj.svg.action.RotateActionInteractor"/>
|
||||
<component class="org.kabeja.svg.action.LayoutSwitchAction"/>
|
||||
<component class="org.kabeja.svg.action.PrintAction"/>
|
||||
</components>
|
||||
</uiconfiguration>
|
Reference in New Issue
Block a user