[qet] [4236] DXFtoQET added polyline entitie conversion

[ Thread Index | Date Index | More lists.tuxfamily.org/qet Archives ]


Revision: 4236
Author:   rdsivd
Date:     2015-10-11 08:31:39 +0200 (Sun, 11 Oct 2015)
Log Message:
-----------
DXFtoQET added polyline entitie conversion
block line and arc conversion

Modified Paths:
--------------
    branches/dxftoqet2/DXFtoQET.pro
    branches/dxftoqet2/dxf_create_elmt.cpp
    branches/dxftoqet2/dxf_create_elmt.h
    branches/dxftoqet2/dxftoqet_mainwindow.cpp
    branches/dxftoqet2/dxftoqet_mainwindow.ui
    branches/dxftoqet2/src/dxf_data.h
    branches/dxftoqet2/src/dxf_split.cpp
    branches/dxftoqet2/src/dxf_split.h

Added Paths:
-----------
    branches/dxftoqet2/src/dxf/dxf_polyline.cpp
    branches/dxftoqet2/src/dxf/dxf_polyline.h
    branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.cpp
    branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.h

Modified: branches/dxftoqet2/DXFtoQET.pro
===================================================================
--- branches/dxftoqet2/DXFtoQET.pro	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/DXFtoQET.pro	2015-10-11 06:31:39 UTC (rev 4236)
@@ -43,7 +43,9 @@
     src/dxf/dxf_rect.cpp \
     src/dxf/dxf_attr.cpp \
     src/dxf/dxf_ellipse.cpp \
-    src/dxf_base_types/dxf_base_ellipse.cpp
+    src/dxf_base_types/dxf_base_ellipse.cpp \
+    src/dxf_base_types/dxf_base_polyline.cpp \
+    src/dxf/dxf_polyline.cpp
 
 HEADERS  += dxftoqet_mainwindow.h \
     src/dxf_data.h \
@@ -74,7 +76,9 @@
     src/dxf/dxf_rect.h \
     src/dxf/dxf_attr.h \
     src/dxf/dxf_ellipse.h \
-    src/dxf_base_types/dxf_base_ellipse.h
+    src/dxf_base_types/dxf_base_ellipse.h \
+    src/dxf_base_types/dxf_base_polyline.h \
+    src/dxf/dxf_polyline.h
 
 FORMS    += dxftoqet_mainwindow.ui
 

Modified: branches/dxftoqet2/dxf_create_elmt.cpp
===================================================================
--- branches/dxftoqet2/dxf_create_elmt.cpp	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/dxf_create_elmt.cpp	2015-10-11 06:31:39 UTC (rev 4236)
@@ -12,6 +12,9 @@
 extern struct DXF_entities_text DXF_input_entities_text[1000];
 extern struct DXF_entities_ellipse DXF_input_entities_ellipse[1000];
 extern struct DXF_entities_insert DXF_input_entities_insert[1000];
+extern struct DXF_entities_polyline DXF_input_entities_polyline[1000];
+extern struct DXF_entities_seqend DXF_input_entities_seqend[1000];
+extern struct DXF_entities_vertex DXF_input_entities_vertex[1000];
 
 extern struct DXF_block_line DXF_input_block_line[100][50];
 extern struct DXF_block_arc DXF_input_block_arc[100][50];
@@ -264,6 +267,11 @@
 	Count_entitie_ellipse=DXF_main_base[0].DXF_entities_ellipse_count;
 	Result.append(Make_ELLIPSE());
 
+	/* POLYLINE */
+
+	Count_entitie_polyline=DXF_main_base[0].DXF_entities_polyline_count;
+	Result.append(Make_POLYLINE());
+
 	/* INSERT */
 
 	Count_entitie_insert=DXF_main_base[0].DXF_entities_insert_count;
@@ -573,6 +581,58 @@
 	return Result_ellipse2;
  }
 
+
+ QString DXF_create_elmt::Make_POLYLINE()
+ {
+
+	dxf_polyline db_polyline;
+
+	Polyline_vertex=DXF_main_base[0].DXF_entities_vertex_count;
+
+	Result_polyline="";
+
+	Count_lines=0;
+	count_vertex=1;
+
+	while (Count_lines<=Count_entitie_polyline)
+	{
+
+	   for(counter_x=0;counter_x<Polyline_vertex;counter_x++)
+	   {
+		   if (DXF_input_entities_vertex[counter_x].Master_handle_id==DXF_input_entities_polyline[Count_lines].DXF_entities_polyline_code_5)
+		   {
+			db_polyline.x_vector[count_vertex]=DXF_input_entities_vertex[Count_lines].DXF_entities_vertex_code_10;
+			db_polyline.y_vector[count_vertex]=-DXF_input_entities_vertex[Count_lines].DXF_entities_vertex_code_20;
+			count_vertex=count_vertex+1;
+		   }
+	   }
+
+	   db_polyline.vector_count=count_vertex;
+
+	   db_polyline.antialias="false";
+	   db_polyline.line_style="normal";
+	   db_polyline.line_weight="thin";
+	   db_polyline.filling="none";
+	   db_polyline.color="black";
+	   db_polyline.closed=DXF_input_entities_polyline[Count_lines].DXF_entities_polyline_code_70;
+
+
+	   db_polyline.ltype=DXF_input_entities_polyline[Count_lines].DXF_entities_polyline_code_6;
+	   db_polyline.layer=DXF_input_entities_polyline[Count_lines].DXF_entities_polyline_code_8;
+
+
+
+
+	   Result_polyline.append(db_polyline.Create_POLYLINE());
+
+	   Count_lines=Count_lines+1;
+	   count_vertex=1;
+
+
+	}
+
+	return Result_polyline;
+ }
   QString DXF_create_elmt::Make_INSERT()
   {
 	  Result_insert="";
@@ -590,9 +650,14 @@
 		else
 		{
 
+			x_insert=0;
+			y_insert=0;
+
 			Insert_block_nr=Count_lines;
+
 			x_insert=DXF_input_entities_insert[Count_lines].DXF_entities_insert_code_10;
 			y_insert=DXF_input_entities_insert[Count_lines].DXF_entities_insert_code_20;
+			Name_insert=DXF_input_entities_insert[Count_lines].DXF_entities_insert_code_2;
 
 
 
@@ -600,7 +665,7 @@
 
 			Result_insert.append(Make_Block_LINES());
 
-			/* Block LINES */
+			/* Block ARC */
 
 			Result_insert.append(Make_Block_ARC());
 

Modified: branches/dxftoqet2/dxf_create_elmt.h
===================================================================
--- branches/dxftoqet2/dxf_create_elmt.h	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/dxf_create_elmt.h	2015-10-11 06:31:39 UTC (rev 4236)
@@ -15,6 +15,7 @@
 #include "dxf/dxf_attr.h"
 #include "dxf/dxf_text.h"
 #include "dxf/dxf_ellipse.h"
+#include "dxf/dxf_polyline.h"
 
 class DXF_create_elmt : public QMainWindow
 {
@@ -34,6 +35,7 @@
 	QString Make_TEXT();
 	QString Make_ELLIPSE();
 	QString Make_INSERT();
+	QString Make_POLYLINE();
 
 	QString Make_Block_LINES();
 	QString Make_Block_ARC();
@@ -58,6 +60,7 @@
 	QString Result_ellipse;
 	QString Result_ellipse2;
 	QString Result_insert;
+	QString Result_polyline;
 
 	QString Result_Block_Lines;
 	QString Result_Block_Arc;
@@ -72,6 +75,8 @@
 	bool DXF_LIMMIN;
 
 	int Count_header;
+	int counter_x;
+	int count_vertex;
 
 	int Count_entitie_line;
 	int Count_entitie_arc;
@@ -82,6 +87,7 @@
 	int Count_entitie_text;
 	int Count_entitie_ellipse;
 	int Count_entitie_insert;
+	int Count_entitie_polyline;
 
 	int Count_lines;
 	int Count_lines_block;
@@ -90,10 +96,14 @@
 
 	int Insert_block_nr;
 
+	int Polyline_vertex;
+
 	double x_insert;
 	double y_insert;
 
+	QString Name_insert;
 
+
 	signals:
 
 	public slots:

Modified: branches/dxftoqet2/dxftoqet_mainwindow.cpp
===================================================================
--- branches/dxftoqet2/dxftoqet_mainwindow.cpp	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/dxftoqet_mainwindow.cpp	2015-10-11 06:31:39 UTC (rev 4236)
@@ -181,9 +181,9 @@
 
 
 		FileType=DXF_main_base[0].dxf_openfile.split(".").last();
-		FileName=DXF_main_base[0].dxf_openfile.split(".").first();
+		FileName=DXF_main_base[0].dxf_openfile.split(".").first().toLower();
 
-		DXF_main_base[0].dxf_openfile=FileName;
+		DXF_main_base[0].dxf_openfile=FileName.replace("-","_");
 		DXF_main_base[0].dxf_filetype=FileType;
 
 
@@ -1234,8 +1234,6 @@
 
 }
 
-
-
 void DXFtoQET_MainWindow::on_savepath_clicked()
 {
 	DXF_main_base[0].dxf_savepath = QFileDialog::getExistingDirectory(this, tr("Open Directory"),DXF_main_base[0].dxf_dir ,QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
@@ -1269,7 +1267,7 @@
 	{
 
 			QModelIndex index = model3->index(row2,0,QModelIndex());
-			model3->setData(index,QString::number(blockcount));
+			model3->setData(index,DXF_input_table_block_record[row2].dxf_table_block_record_code_2);
 
 			blockcount=blockcount+1;
 

Modified: branches/dxftoqet2/dxftoqet_mainwindow.ui
===================================================================
--- branches/dxftoqet2/dxftoqet_mainwindow.ui	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/dxftoqet_mainwindow.ui	2015-10-11 06:31:39 UTC (rev 4236)
@@ -470,7 +470,7 @@
             <enum>QTabWidget::Rounded</enum>
            </property>
            <property name="currentIndex">
-            <number>6</number>
+            <number>2</number>
            </property>
            <widget class="QWidget" name="tab_ELMT">
             <property name="sizePolicy">
@@ -757,7 +757,7 @@
               <string notr="true">BACKGROUND:rgb(225, 225, 225)</string>
              </property>
              <property name="currentIndex">
-              <number>2</number>
+              <number>3</number>
              </property>
              <widget class="QWidget" name="tab_dxf_sections">
               <attribute name="title">
@@ -1863,6 +1863,9 @@
                 </item>
                 <item row="12" column="2">
                  <widget class="QLabel" name="label_44">
+                  <property name="styleSheet">
+                   <string notr="true">BACKGROUND:rgb(165, 198, 130)</string>
+                  </property>
                   <property name="text">
                    <string>POLYLINE</string>
                   </property>
@@ -2717,7 +2720,7 @@
               <string>Open config file</string>
              </property>
             </widget>
-            <widget class="QWidget" name="">
+            <widget class="QWidget" name="layoutWidget">
              <property name="geometry">
               <rect>
                <x>40</x>

Added: branches/dxftoqet2/src/dxf/dxf_polyline.cpp
===================================================================
--- branches/dxftoqet2/src/dxf/dxf_polyline.cpp	                        (rev 0)
+++ branches/dxftoqet2/src/dxf/dxf_polyline.cpp	2015-10-11 06:31:39 UTC (rev 4236)
@@ -0,0 +1,46 @@
+#include "dxf_polyline.h"
+
+dxf_polyline::dxf_polyline(QWidget *parent) :
+	QMainWindow(parent)
+{
+}
+
+QString dxf_polyline::Create_POLYLINE()
+{
+	dxf_base_polyline db_polyline;
+	DXF_Ltype_control db_line_ltype_control;
+
+	Result_polyline="";
+
+	db_line_ltype_control.FindLT=ltype;
+	db_line_ltype_control.Layer=layer;
+
+	db_polyline.QET_line_style=db_line_ltype_control.Ltype_control();
+
+	db_polyline.QET_antialias=antialias;
+	db_polyline.QET_line_weight=line_weight;
+	db_polyline.QET_filling=filling;
+	db_polyline.QET_color=color;
+	if (closed==1)
+	{
+		db_polyline.QET_closed="true";
+	}
+	else
+	{
+		db_polyline.QET_closed="false";
+	}
+
+	for (count=1; count<vector_count+1;count++)
+	{
+		db_polyline.QET_x[count]=x_vector[count];
+		db_polyline.QET_y[count]=y_vector[count];
+
+
+	}
+
+	db_polyline.segments=vector_count;
+
+	Result_polyline.append(db_polyline.Create_polyline());
+
+	return Result_polyline;
+}

Added: branches/dxftoqet2/src/dxf/dxf_polyline.h
===================================================================
--- branches/dxftoqet2/src/dxf/dxf_polyline.h	                        (rev 0)
+++ branches/dxftoqet2/src/dxf/dxf_polyline.h	2015-10-11 06:31:39 UTC (rev 4236)
@@ -0,0 +1,43 @@
+#ifndef DXF_POLYLINE_H
+#define DXF_POLYLINE_H
+
+#include <QMainWindow>
+#include "dxf_base_types/dxf_base_polyline.h"
+#include "dxf_control/dxf_ltype_control.h"
+
+class dxf_polyline : public QMainWindow
+{
+	Q_OBJECT
+	public:
+	explicit dxf_polyline(QWidget *parent = 0);
+
+	QString layer;				//8
+	QString ltype;				//6
+
+	QString antialias;
+	QString style;
+	QString line_style;
+	QString line_weight;
+	QString filling;
+	QString color;
+
+	int16_t closed; //70
+
+	double x_vector[50];
+	double y_vector[50];
+
+	QString Result_polyline;
+
+	int vector_count;
+	int count;
+
+
+	QString Create_POLYLINE();
+
+	signals:
+
+	public slots:
+
+};
+
+#endif // DXF_POLYLINE_H

Added: branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.cpp
===================================================================
--- branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.cpp	                        (rev 0)
+++ branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.cpp	2015-10-11 06:31:39 UTC (rev 4236)
@@ -0,0 +1,84 @@
+#include "dxf_base_polyline.h"
+
+dxf_base_polyline::dxf_base_polyline(QWidget *parent) :
+	QMainWindow(parent)
+{
+}
+
+QString dxf_base_polyline::Create_polyline()
+{
+
+	/* <polygon style="line-style:normal;
+	 * line-weight:thin;filling:none;color:black"
+	 * closed="false"
+	 * y1="-100" y2="-90" y3="0" y4="65" y5="75" y6="-20"
+	 * antialias="false"
+	 * y7="-30" x1="-140" y8="15" x2="0" y9="10" x3="60"
+	 * x4="15" x5="-125" x6="-125" x7="-60" x8="-60"
+	 * x9="-5" y10="-75" x10="-20" y11="-75" x11="-20"/>*/
+
+	/* <polygon style="line-style:normal;
+	 * line-weight:thin;filling:none;color:red"
+	 * closed="true" antialias="false"
+	 * x1="184.65" y1="-143.83" x2="184.65" y2="-143.83"
+	 * x3="184.65" y3="-143.83" x4="184.65" y4="-143.83" /> */
+
+	Result_polyline="";
+
+	/* create qet elmt code */
+
+	Result_polyline.append("     ");
+	Result_polyline.append("<polygon");
+	Result_polyline.append(" style=");
+
+	Result_polyline.append(QChar(34));
+	Result_polyline.append("line-style:");
+	Result_polyline.append(QET_line_style);
+	Result_polyline.append(";");
+
+
+	Result_polyline.append("line-weight:");
+	Result_polyline.append(QET_line_weight);
+	Result_polyline.append(";");
+
+	Result_polyline.append("filling:");
+	Result_polyline.append(QET_filling);
+	Result_polyline.append(";");
+
+	Result_polyline.append("color:");
+	Result_polyline.append(QET_color);
+	Result_polyline.append(QChar(34));
+
+	Result_polyline.append(" closed=");
+	Result_polyline.append(QChar(34));
+	Result_polyline.append(QET_closed);
+	Result_polyline.append(QChar(34));
+
+	Result_polyline.append(" antialias=");
+	Result_polyline.append(QChar(34));
+	Result_polyline.append(QET_antialias);
+	Result_polyline.append(QChar(34));
+
+	for (count_segments=1; count_segments<segments;count_segments++)
+	{
+		Result_polyline.append(" x");
+		Result_polyline.append(QString::number(count_segments));
+		Result_polyline.append("=");
+		Result_polyline.append(QChar(34));
+		Result_polyline.append(QString::number(QET_x[count_segments],'f',2));
+		Result_polyline.append(QChar(34));
+
+		Result_polyline.append(" y");
+		Result_polyline.append(QString::number(count_segments));
+		Result_polyline.append("=");
+		Result_polyline.append(QChar(34));
+		Result_polyline.append(QString::number(QET_y[count_segments],'f',2));
+		Result_polyline.append(QChar(34));
+	}
+
+	Result_polyline.append(" />");
+	Result_polyline.append('\n');
+
+	return Result_polyline;
+
+}

Added: branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.h
===================================================================
--- branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.h	                        (rev 0)
+++ branches/dxftoqet2/src/dxf_base_types/dxf_base_polyline.h	2015-10-11 06:31:39 UTC (rev 4236)
@@ -0,0 +1,36 @@
+#ifndef DXF_BASE_POLYLINE_H
+#define DXF_BASE_POLYLINE_H
+
+#include <QMainWindow>
+
+class dxf_base_polyline : public QMainWindow
+{
+	Q_OBJECT
+	public:
+	explicit dxf_base_polyline(QWidget *parent = 0);
+
+	QString Result_polyline;
+
+	QString QET_line_style;
+	QString QET_line_weight;
+	QString QET_filling;
+	QString QET_color;
+	QString QET_closed;
+	QString QET_antialias;
+
+	double QET_x[50];
+	double QET_y[50];
+
+	int count_segments;
+	int segments;
+
+
+	QString Create_polyline();
+
+	signals:
+
+	public slots:
+
+};
+
+#endif // DXF_BASE_POLYLINE_H

Modified: branches/dxftoqet2/src/dxf_data.h
===================================================================
--- branches/dxftoqet2/src/dxf_data.h	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/src/dxf_data.h	2015-10-11 06:31:39 UTC (rev 4236)
@@ -1908,6 +1908,7 @@
 
 
 		int16_t DXF_block_polyline_code_62;
+		int16_t DXF_block_polyline_code_66;
 
 		int16_t DXF_block_polyline_code_70;
 		int16_t DXF_block_polyline_code_71;
@@ -3365,6 +3366,8 @@
 		double DXF_entities_polyline_code_31;
 
 		int16_t DXF_entities_polyline_code_62;
+		int16_t DXF_entities_polyline_code_66;
+		int16_t DXF_entities_polyline_code_70;
 
 		QString DXF_entities_polyline_code_100[3];
 
@@ -3436,6 +3439,7 @@
 
 	struct DXF_entities_seqend
 	{
+		QString Master_handle_id;
 		QString DXF_entities_seqend_code_5;
 		QString DXF_entities_seqend_code_6;
 
@@ -3676,6 +3680,7 @@
 
 	struct DXF_entities_vertex
 	{
+		QString Master_handle_id;
 		QString DXF_entities_vertex_code_5;
 		QString DXF_entities_vertex_code_6;
 

Modified: branches/dxftoqet2/src/dxf_split.cpp
===================================================================
--- branches/dxftoqet2/src/dxf_split.cpp	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/src/dxf_split.cpp	2015-10-11 06:31:39 UTC (rev 4236)
@@ -14360,6 +14360,8 @@
 											Log_1.append(QString::number(entities_3DFACE_count2));
 											Log_1.append(" 3DFACE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -14591,6 +14593,8 @@
 											Log_1.append(QString::number(entities_3DSOLID_count2));
 											Log_1.append(" 3DSOLID \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -14822,6 +14826,8 @@
 											Log_1.append(QString::number(entities_ACAD_PROXY_ENTITY_count2));
 											Log_1.append(" ACAD_PROXY_ENTITY \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -15058,6 +15064,8 @@
 											Log_1.append(QString::number(entities_ARC_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -15321,6 +15329,8 @@
 											Log_1.append(QString::number(entities_ATTDEF_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 1:
@@ -15576,6 +15586,8 @@
 											Log_1.append(QString::number(entities_ATTRIB_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 1: // attribute value
@@ -15916,6 +15928,8 @@
 											Log_1.append(QString::number(entities_BODY_count2));
 											Log_1.append(" BODY \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -16150,6 +16164,8 @@
 											Log_1.append(QString::number(entities_CIRCLE_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 2:
@@ -16453,6 +16469,8 @@
 											Log_1.append(QString::number(entities_DIMENSION_count2));
 											Log_1.append(" DIMENSION \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -16685,6 +16703,8 @@
 											Log_1.append(QString::number(entities_ELLIPSE_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -16954,6 +16974,8 @@
 											Log_1.append(QString::number(entities_HATCH_count2));
 											Log_1.append(" HATCH \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -17185,6 +17207,8 @@
 											Log_1.append(QString::number(entities_HELIX_count2));
 											Log_1.append(" HELIX \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -17416,6 +17440,8 @@
 											Log_1.append(QString::number(entities_IMAGE_count2));
 											Log_1.append(" IMAGE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -17652,6 +17678,8 @@
 											Log_1.append(QString::number(entities_INSERT_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 2:
@@ -17846,6 +17874,8 @@
 											Log_1.append(QString::number(entities_LEADER_count2));
 											Log_1.append(" LEADER \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -18077,6 +18107,8 @@
 											Log_1.append(QString::number(entities_LIGHT_count2));
 											Log_1.append(" LIGHT \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -18313,6 +18345,8 @@
 											Log_1.append(QString::number(entities_LINE_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5: // Handle
@@ -18576,6 +18610,8 @@
 											Log_1.append(QString::number(entities_LWPOLYLINE_count2));
 											Log_1.append(" LWPOLYLINE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -18887,6 +18923,8 @@
 											Log_1.append(QString::number(entities_MESH_count2));
 											Log_1.append(" MESH \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -19118,6 +19156,8 @@
 											Log_1.append(QString::number(entities_MLINE_count2));
 											Log_1.append(" MLINE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -19349,6 +19389,8 @@
 											Log_1.append(QString::number(entities_MLEADERSTYLE_count2));
 											Log_1.append(" MLEADERSTYLE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -19580,6 +19622,8 @@
 											Log_1.append(QString::number(entities_MLEADER_count2));
 											Log_1.append(" MLEADER \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -19811,6 +19855,8 @@
 											Log_1.append(QString::number(entities_MTEXT_count2));
 											Log_1.append(" MTEXT \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -20042,6 +20088,8 @@
 											Log_1.append(QString::number(entities_OLEFRAME_count2));
 											Log_1.append(" OLEFRAME \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -20273,6 +20321,8 @@
 											Log_1.append(QString::number(entities_OLE2FRAME_count2));
 											Log_1.append(" OLE2FRAME \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -20504,6 +20554,8 @@
 											Log_1.append(QString::number(entities_POINT_count2));
 											Log_1.append(" POINT \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -20816,22 +20868,12 @@
 											if(sw_entities_polyline[5]==0)
 											{
 												DXF_input_entities_polyline[entities_POLYLINE_count2].DXF_entities_polyline_code_5=line6;
+												Master_handle_id=line6;
 												sw_entities_polyline[5]=1;
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
@@ -20845,18 +20887,7 @@
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
@@ -20870,18 +20901,7 @@
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
@@ -20895,18 +20915,7 @@
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
@@ -20920,40 +20929,47 @@
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
 
+										case 66:
 
+											if(sw_entities_polyline[66]==0)
+											{
+												DXF_input_entities_polyline[entities_POLYLINE_count2].DXF_entities_polyline_code_66=line6.toInt();
+												sw_entities_polyline[66]=1;
+											}
+											else
+											{
+												Log_1.append(found_entities_polyline());
 
+											}
+
+											break;
+
+										case 70:
+
+											if(sw_entities_polyline[70]==0)
+											{
+												DXF_input_entities_polyline[entities_POLYLINE_count2].DXF_entities_polyline_code_70=line6.toInt();
+												sw_entities_polyline[70]=1;
+											}
+											else
+											{
+												Log_1.append(found_entities_polyline());
+											}
+
+											break;
+
+
+
 										case 100:
 
 											if (entities_POLYLINE_count2_100>2)
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											 }
 											else
 											 {
@@ -20972,33 +20988,13 @@
 											}
 											else
 											{
-												Log_1.append("Find in ENTITIES code ");
-												Log_1.append(QString::number(entities_POLYLINE_count2));
-												Log_1.append(" POLYLINE \n");
-												Log_1.append("Line :" );
-												Log_1.append(QString::number( for_count1));
-												Log_1.append(" ");
-												Log_1.append("Code :" );
-												Log_1.append(QString::number( line5));
-												Log_1.append(" : ");
-												Log_1.append(line6);
-												Log_1.append(" ");
-												Log_1.append("\n");
+												Log_1.append(found_entities_polyline());
 											}
 
 											break;
 
 										default:
-											Log_1.append("Find in entities POLYLINE \n");
-											Log_1.append("Line :" );
-											Log_1.append(QString::number( for_count1));
-											Log_1.append(" ");
-											Log_1.append("Code :" );
-											Log_1.append(QString::number( line5));
-											Log_1.append(" : ");
-											Log_1.append(line6);
-											Log_1.append(" ");
-											Log_1.append("\n");
+											Log_1.append(found_entities_polyline());
 									}
 								}
 
@@ -21040,6 +21036,8 @@
 											Log_1.append(QString::number(entities_RAY_count2));
 											Log_1.append(" RAY \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -21270,6 +21268,8 @@
 											Log_1.append(QString::number(entities_REGION_count2));
 											Log_1.append(" REGION \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -21501,6 +21501,8 @@
 											Log_1.append(QString::number(entities_SECTION_count2));
 											Log_1.append(" SECTION \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -21731,6 +21733,7 @@
 											Log_1.append("End reading entities ");
 											Log_1.append(QString::number(entities_SEQEND_count2));
 											Log_1.append(" SEQEND \n");
+											DXF_input_entities_seqend[entities_SEQEND_count2].Master_handle_id=Master_handle_id;
 
 											break;
 
@@ -21963,6 +21966,8 @@
 											Log_1.append(QString::number(entities_SHAPE_count2));
 											Log_1.append(" SHAPE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -22194,6 +22199,8 @@
 											Log_1.append(QString::number(entities_SOLID_count2));
 											Log_1.append(" SOLID \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -22425,6 +22432,8 @@
 											Log_1.append(QString::number(entities_SPLINE_count2));
 											Log_1.append(" SPLINE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -22656,6 +22665,8 @@
 											Log_1.append(QString::number(entities_SUN_count2));
 											Log_1.append(" SUN \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -22887,6 +22898,8 @@
 											Log_1.append(QString::number(entities_SURFACE_count2));
 											Log_1.append(" SURFACE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -23118,6 +23131,8 @@
 											Log_1.append(QString::number(entities_TABLE_count2));
 											Log_1.append(" TABLE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -23356,6 +23371,8 @@
 											Log_1.append(QString::number(entities_TEXT_count2));
 											Log_1.append("\n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 1:
@@ -23669,6 +23686,8 @@
 											Log_1.append(QString::number(entities_TOLERANCE_count2));
 											Log_1.append(" TOLERANCE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -23900,6 +23919,8 @@
 											Log_1.append(QString::number(entities_TRACE_count2));
 											Log_1.append(" TRACE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -24131,6 +24152,8 @@
 											Log_1.append(QString::number(entities_UNDERLAY_count2));
 											Log_1.append(" UNDERLAY \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -24362,6 +24385,8 @@
 											Log_1.append(QString::number(entities_VERTEX_count2));
 											Log_1.append(" VERTEX \n");
 
+											DXF_input_entities_vertex[entities_VERTEX_count2].Master_handle_id=Master_handle_id;
+
 											break;
 
 										case 5:
@@ -24593,6 +24618,8 @@
 											Log_1.append(QString::number(entities_VIEWPORT_count2));
 											Log_1.append(" VIEWPORT \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -24824,6 +24851,8 @@
 											Log_1.append(QString::number(entities_WIPEOUT_count2));
 											Log_1.append(" WIPEOUT \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -25055,6 +25084,8 @@
 											Log_1.append(QString::number(entities_XLINE_count2));
 											Log_1.append(" XLINE \n");
 
+											Master_handle_id="";
+
 											break;
 
 										case 5:
@@ -25655,7 +25686,27 @@
 	return Log_2;
 }
 
+QString dxf_split::found_entities_polyline()
+{
+	Log_2="";
+	Log_2.append("Found in ENTITIES code ");
+	Log_2.append(" POLYLINE n°: ");
+	Log_2.append(QString::number(entities_LINE_count2));
+	Log_2.append(" line :" );
+	Log_2.append(QString::number( for_count1));
+	Log_2.append(" ");
+	Log_2.append(" code :" );
+	Log_2.append(QString::number( line5));
+	Log_2.append(" - ");
+	Log_2.append(line6);
+	Log_2.append(" ");
+	Log_2.append("\n");
 
+	return Log_2;
+}
+
+
+
 QString dxf_split::found_block_section2()
 {
 	Log_2="";

Modified: branches/dxftoqet2/src/dxf_split.h
===================================================================
--- branches/dxftoqet2/src/dxf_split.h	2015-10-05 19:42:12 UTC (rev 4235)
+++ branches/dxftoqet2/src/dxf_split.h	2015-10-11 06:31:39 UTC (rev 4236)
@@ -349,6 +349,8 @@
 
 	QString Log_1;
 
+	QString Master_handle_id;
+
 	int sw_cleaner;
 	bool sw_header[1072];
 	bool sw_classes[1072];


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/