[qet] [3346] dxfTOelmt adde acad block creation into <parts></parts>

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


Revision: 3346
Author:   rdsivd
Date:     2014-10-05 13:26:04 +0200 (Sun, 05 Oct 2014)
Log Message:
-----------
dxfTOelmt adde acad block creation into <parts></parts>
at end of file remove double </parts> to read file into qet

Modified Paths:
--------------
    branches/dxftoelmt/ImportDXF.pro
    branches/dxftoelmt/src/ui/dxf_arc.cpp
    branches/dxftoelmt/src/ui/dxf_arc.h
    branches/dxftoelmt/src/ui/dxf_attdef.cpp
    branches/dxftoelmt/src/ui/dxf_attrib.cpp
    branches/dxftoelmt/src/ui/dxf_check_ltype.cpp
    branches/dxftoelmt/src/ui/dxf_circle.cpp
    branches/dxftoelmt/src/ui/dxf_data.h
    branches/dxftoelmt/src/ui/dxf_elmt_output.cpp
    branches/dxftoelmt/src/ui/dxf_elmt_output.h
    branches/dxftoelmt/src/ui/dxf_line.cpp
    branches/dxftoelmt/src/ui/dxf_ltype.cpp
    branches/dxftoelmt/src/ui/dxf_point.cpp
    branches/dxftoelmt/src/ui/dxf_polyline.cpp
    branches/dxftoelmt/src/ui/dxf_solid.cpp
    branches/dxftoelmt/src/ui/dxf_text.cpp
    branches/dxftoelmt/src/ui/dxftoelmt.cpp
    branches/dxftoelmt/src/ui/dxftoelmt.h
    branches/dxftoelmt/src/ui/mainwindow.cpp

Added Paths:
-----------
    branches/dxftoelmt/src/ui/dxf_block.cpp
    branches/dxftoelmt/src/ui/dxf_block.h

Modified: branches/dxftoelmt/ImportDXF.pro
===================================================================
--- branches/dxftoelmt/ImportDXF.pro	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/ImportDXF.pro	2014-10-05 11:26:04 UTC (rev 3346)
@@ -41,7 +41,8 @@
     src/ui/dxf_elmt_output.cpp \
     src/ui/dxf_check_string_chars.cpp \
     src/ui/dxf_check_ltype.cpp \
-    src/ui/dxf_solid.cpp
+    src/ui/dxf_solid.cpp \
+    src/ui/dxf_block.cpp
 
 HEADERS += src/ui_mainwindow.h \
         src/ui/mainwindow.h \
@@ -70,7 +71,8 @@
     src/ui/dxf_elmt_output.h \
     src/ui/dxf_check_string_chars.h \
     src/ui/dxf_check_ltype.h \
-    src/ui/dxf_solid.h
+    src/ui/dxf_solid.h \
+    src/ui/dxf_block.h
 
 FORMS    += src/ui/mainwindow.ui
 

Modified: branches/dxftoelmt/src/ui/dxf_arc.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_arc.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_arc.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -92,29 +92,19 @@
 
 	}
 
+	dxf_check_ltype Check_LineType;
 
-	/* find out line type */
+	Check_LineType.LayerCount=LayerCount1;
+	Check_LineType.LTypeCount=LTypeCount1;
+	Check_LineType.LType_to_check=LineTypeOFLine;
+	Check_LineType.Layer_name_to_check=LayerNameOFLine;
 
-	/*if (LineTypeOFLine == "")
-	{
+	LineStyle1= Check_LineType.Check_LType(LTypeDXF, LayerDXF);
 
-		for (y=0;y<LayerCount1+1;y++)
-		{
 
-			if (LayerDXF[y].LayerName.contains(LayerNameOFLine))
-			{
-				LineStyle=GetLineType(LayerDXF[y].LayerLineType);
-			}
-		}
 
-	}
-	else
-	{
-		LineStyle=GetLineType(LineTypeOFLine);
 
-	}*/
 
-
 	Lineout="   ";
 	Lineout.append("   ");
 	Lineout.append("   ");
@@ -154,7 +144,7 @@
 	Lineout.append(" style=");
 	Lineout.append(QChar(34));
 	Lineout.append("line-style:");
-	Lineout.append(LineStyle);
+	Lineout.append(LineStyle1);
 	Lineout.append(";");
 	Lineout.append("line-weight:thin;");
 	Lineout.append("filling:none;");
@@ -308,7 +298,12 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return ;
 
 

Modified: branches/dxftoelmt/src/ui/dxf_arc.h
===================================================================
--- branches/dxftoelmt/src/ui/dxf_arc.h	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_arc.h	2014-10-05 11:26:04 UTC (rev 3346)
@@ -3,10 +3,18 @@
 
 #include <QtCore>
 #include <dxf_data.h>
+#include "dxf_check_ltype.h"
+#include "dxf_ltype.h"
 
 class DXF_Arc: public DXF_Data
 {
 	public:
+
+	int LineCount;
+	int LTypeCount1;
+	int LayerCount1;
+	int Entities1;
+
 	DXF_Arc();
 
 	void ConvertArc (int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF LineTable4[2000], struct _LType_ACAD LTypeDXF[200], struct _Layer_ACAD LayerDXF[200],struct _Block_ACAD BlockList[2000]);

Modified: branches/dxftoelmt/src/ui/dxf_attdef.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_attdef.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_attdef.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -113,6 +113,11 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return ;
 }

Modified: branches/dxftoelmt/src/ui/dxf_attrib.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_attrib.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_attrib.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -110,6 +110,11 @@
         BlockList[0].BlockDef.append(Lineout);
 
     }
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
     return ;
 }

Added: branches/dxftoelmt/src/ui/dxf_block.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_block.cpp	                        (rev 0)
+++ branches/dxftoelmt/src/ui/dxf_block.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -0,0 +1,146 @@
+#include "dxf_block.h"
+
+DXF_block::DXF_block()
+{
+}
+
+void DXF_block::ConvertBlock(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF  LineTable4[], struct _LType_ACAD LTypeDXF[], struct _Layer_ACAD  LayerDXF[], struct _Block_ACAD BlockList[])
+{
+
+	int x;
+
+	for (x=0;x<Counter-1;x++)
+	{
+
+		ControlLine1=LineTable4[x].Line1;
+		ControlLine2=LineTable4[x].Line2;
+
+		if (LineTable4[x].Line1.contains(" 10", Qt::CaseSensitive) )
+	   {
+			center_x=LineTable4[x].Line2.toDouble();
+		}
+
+		if (LineTable4[x].Line1.contains(" 20", Qt::CaseSensitive))
+		{
+			center_y=-(LineTable4[x].Line2.toDouble());
+		}
+
+
+		if (LineTable4[x].Line1.contains("  6", Qt::CaseSensitive))
+		{
+			LineTypeOFLine=LineTable4[x].Line2;
+		}
+
+		if (LineTable4[x].Line1.contains("  8", Qt::CaseSensitive))
+		{
+			LayerNameOFLine=LineTable4[x].Line2;
+		}
+		if (LineTable4[x].Line1.contains("  2", Qt::CaseSensitive))
+		{
+			BlockName=LineTable4[x].Line2;
+		}
+
+
+
+	}
+
+	dxf_check_string_chars BlockNameToCheck;
+
+	BlockNameToCheck.TextToCheck=BlockName;
+
+	BlockName=BlockNameToCheck.CheckText();
+
+
+	BlockList[BlockCount].BlockName=BlockName;
+
+	dxf_elmt_output Load_dxf_output;
+
+	Load_dxf_output.Filename=BlockName;
+
+	BlockNames=Load_dxf_output.elmt_Taal();
+
+
+	Lineout="   ";
+	Lineout.append("<part hotspot_x=");
+	Lineout.append(QChar(34));
+	Lineout.append(QString::number(center_x,'f',2));
+	Lineout.append(QChar(34));
+
+	Lineout.append(" hotspot_y=");
+	Lineout.append(QChar(34));
+	Lineout.append(QString::number(center_y,'f',2));
+	Lineout.append(QChar(34));
+
+
+	Lineout.append(" name=");
+	Lineout.append(QChar(34));
+	Lineout.append(BlockName);
+	Lineout.append(QChar(34));
+
+	Lineout.append(" >");
+	Lineout.append('\n');
+
+	Lineout.append(BlockNames);
+
+	Lineout.append("   ");
+	Lineout.append("   ");
+	Lineout.append("<partdescript>");
+	Lineout.append('\n');
+
+
+
+
+
+
+	if (Entitieswitch==1)
+	{
+		BlockList[0].BlockDef.append(Lineout);
+
+	}
+	if (Entitieswitch==0)
+	{
+
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
+	return ;
+
+}
+
+
+void DXF_block::ConvertEndBlock(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF  LineTable4[], struct _LType_ACAD LTypeDXF[], struct _Layer_ACAD  LayerDXF[], struct _Block_ACAD BlockList[])
+{
+
+
+	Lineout=("   ");
+	Lineout.append("   ");
+	Lineout.append("</partdescript>");
+	Lineout.append('\n');
+
+	Lineout.append("   ");
+	Lineout.append("</part>");
+	Lineout.append('\n');
+
+
+
+
+	if (Entitieswitch==1)
+	{
+		BlockList[0].BlockDef.append(Lineout);
+
+	}
+	if (Entitieswitch==0)
+	{
+
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
+	return ;
+
+
+}
+
+void DXF_block::ConvertBeginParts(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF  LineTable4[], struct _LType_ACAD LTypeDXF[], struct _Layer_ACAD  LayerDXF[], struct _Block_ACAD BlockList[])
+{
+
+}

Added: branches/dxftoelmt/src/ui/dxf_block.h
===================================================================
--- branches/dxftoelmt/src/ui/dxf_block.h	                        (rev 0)
+++ branches/dxftoelmt/src/ui/dxf_block.h	2014-10-05 11:26:04 UTC (rev 3346)
@@ -0,0 +1,35 @@
+#ifndef DXF_BLOCK_H
+#define DXF_BLOCK_H
+
+#include <QtCore>
+#include <dxf_data.h>
+#include "dxf_check_ltype.h"
+#include "dxf_ltype.h"
+#include "dxf_elmt_output.h"
+#include "dxf_check_string_chars.h"
+
+class DXF_block: public DXF_Data
+{
+	public:
+
+	double center_x;
+	double center_y;
+
+	QString LineTypeOFLine;
+	QString LayerNameOFLine;
+	QString BlockName;
+	QString BlockHandle;
+
+	QString BlockNames;
+	QString ControlLine1;
+	QString ControlLine2;
+
+
+	DXF_block();
+
+	void ConvertBlock(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF LineTable4[2000], struct _LType_ACAD LTypeDXF[200], struct _Layer_ACAD LayerDXF[200],struct _Block_ACAD BlockList[2000]);
+	void ConvertEndBlock(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF LineTable4[2000], struct _LType_ACAD LTypeDXF[200], struct _Layer_ACAD LayerDXF[200],struct _Block_ACAD BlockList[2000]);
+	void ConvertBeginParts(int Counter, int BlockCount, int Entitieswitch, struct _ReadLineDXF LineTable4[2000], struct _LType_ACAD LTypeDXF[200], struct _Layer_ACAD LayerDXF[200],struct _Block_ACAD BlockList[2000]);
+};
+
+#endif // DXF_BLOCK_H

Modified: branches/dxftoelmt/src/ui/dxf_check_ltype.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_check_ltype.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_check_ltype.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -26,34 +26,42 @@
 
 
 	}
+	else
+	{
 
+		if (LType_to_check=="")
+		{
+			for(x=0;x<LayerCount+1;x++)
+			{
+				if (LayerDXF[x].LayerName.contains(Layer_name_to_check))
+				{
+					LineStyle1=LayerDXF[x].LayerLineType;
+					x=LayerCount+2;
 
-	if (LType_to_check=="")
-	{
-		for(x=0;x<LayerCount+1;x++)
+				}
+				else
+				{
+					LineStyle1="normal";
+				}
+
+			}
+
+		}
+		else
 		{
-			if (LayerDXF[x].LayerName.contains(Layer_name_to_check))
+			if (LType_to_check=="ByBlock")
 			{
-				LineStyle1=LayerDXF[x].LayerLineType;
-				x=LayerCount+2;
+				LineStyle1="normal";
 
 			}
 			else
 			{
-				LineStyle1="normal";
+				LineStyle1=LType_to_check;
 			}
-
 		}
-
 	}
 
-	if (LType_to_check=="ByBlock")
-	{
-		LineStyle1="normal";
 
-	}
-
-
 	DXF_LType LineToCheck;
 
 	CheckLine=LineToCheck.GetLineType(LineStyle1);

Modified: branches/dxftoelmt/src/ui/dxf_circle.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_circle.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_circle.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -120,6 +120,11 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return ;
 }

Modified: branches/dxftoelmt/src/ui/dxf_data.h
===================================================================
--- branches/dxftoelmt/src/ui/dxf_data.h	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_data.h	2014-10-05 11:26:04 UTC (rev 3346)
@@ -96,6 +96,7 @@
 	int VectorCount;
 
 	double Control2;
+	double Control9;
 	double Control10;
 	double Control11;
 	double Control12;

Modified: branches/dxftoelmt/src/ui/dxf_elmt_output.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_elmt_output.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_elmt_output.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -14,14 +14,18 @@
 
 	ResultElmt.append(elmt_Info());
 
-
 	ResultElmt.append(BlockList[0].BlockDef);
 
+	ResultElmt.append(elmt_Einde());
 
+	ResultElmt.append(elmt_BlockCreationBegin(BlockCount,Flag,BlockList,Filename1));
 
+	ResultElmt.append(elmt_BlockCreation(BlockCount,Flag,BlockList,Filename1));
 
-	ResultElmt.append(elmt_Einde());
+	ResultElmt.append(elmt_BlockCreationEinde(BlockCount,Flag,BlockList,Filename1));
 
+	ResultElmt.append(elmt_Eof());
+
 	return ResultElmt;
 }
 
@@ -120,6 +124,15 @@
 	Lineout.append("</description>");
 	Lineout.append('\n');
 
+	//Lineout.append("</definition>");
+
+	//Lineout.append('\n');
+
+	return Lineout;
+}
+
+QString dxf_elmt_output::elmt_Eof()
+{
 	Lineout.append("</definition>");
 
 	Lineout.append('\n');
@@ -161,12 +174,14 @@
 {
 
 	Lineout="   ";
+	Lineout.append("   ");
 	Lineout.append("<names>");
 	Lineout.append('\n');
 
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("fr");
@@ -178,6 +193,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("en");
@@ -189,6 +205,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("be");
@@ -200,6 +217,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("nl");
@@ -211,6 +229,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("hr");
@@ -222,6 +241,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("pl");
@@ -233,6 +253,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("it");
@@ -244,6 +265,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("sl");
@@ -255,6 +277,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("ca");
@@ -266,6 +289,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("pt");
@@ -277,6 +301,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("el");
@@ -288,6 +313,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("de");
@@ -299,6 +325,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("es");
@@ -310,6 +337,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("cs");
@@ -321,6 +349,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("ro");
@@ -332,6 +361,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("ru");
@@ -343,6 +373,7 @@
 
 	Lineout.append("   ");
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("<name lang=");
 	Lineout.append(QChar(34));
 	Lineout.append("ar");
@@ -354,9 +385,50 @@
 
 
 	Lineout.append("   ");
+	Lineout.append("   ");
 	Lineout.append("</names>");
 	Lineout.append('\n');
 
 
 	return Lineout;
 }
+
+
+QString dxf_elmt_output::elmt_BlockCreation(int BlockCount, int Flag, struct _Block_ACAD BlockList[], QString Filename1)
+{
+
+	int x;
+	Lineout="";
+
+	for(x=1;x<BlockCount;x++)
+	{
+
+		Lineout.append(BlockList[x].BlockDef);
+
+
+	}
+
+	return Lineout;
+}
+
+QString dxf_elmt_output::elmt_BlockCreationBegin(int BlockCount, int Flag, struct _Block_ACAD BlockList[], QString Filename1)
+{
+
+	Lineout="";
+	Lineout.append("<parts>");
+	Lineout.append('\n');
+
+	return Lineout;
+}
+
+QString dxf_elmt_output::elmt_BlockCreationEinde(int BlockCount, int Flag, struct _Block_ACAD BlockList[], QString Filename1)
+{
+
+
+	Lineout="";
+	Lineout.append("</parts>");
+	Lineout.append('\n');
+
+
+	return Lineout;
+}

Modified: branches/dxftoelmt/src/ui/dxf_elmt_output.h
===================================================================
--- branches/dxftoelmt/src/ui/dxf_elmt_output.h	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_elmt_output.h	2014-10-05 11:26:04 UTC (rev 3346)
@@ -30,8 +30,12 @@
 	QString elmt(int BlockCount, int Flag, struct _Block_ACAD BlockList[2000], QString Filename1);
 	QString elmt_Begin();
 	QString elmt_Einde();
+	QString elmt_Eof();
 	QString elmt_Taal();
 	QString elmt_Info();
+	QString elmt_BlockCreation(int BlockCount, int Flag, struct _Block_ACAD BlockList[2000], QString Filename1);
+	QString elmt_BlockCreationBegin(int BlockCount, int Flag, struct _Block_ACAD BlockList[2000], QString Filename1);
+	QString elmt_BlockCreationEinde(int BlockCount, int Flag, struct _Block_ACAD BlockList[2000], QString Filename1);
 };
 
 #endif // DXF_ELMT_OUTPUT_H

Modified: branches/dxftoelmt/src/ui/dxf_line.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_line.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_line.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -140,7 +140,11 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
 	return ;
 
 }

Modified: branches/dxftoelmt/src/ui/dxf_ltype.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_ltype.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_ltype.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -204,6 +204,11 @@
 	{
 	   LTfound="normal";
 	}
+	if(FindLT=="")
+	{
+		LTfound="normal";
+	}
 
+
 	return LTfound;
 }

Modified: branches/dxftoelmt/src/ui/dxf_point.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_point.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_point.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -96,7 +96,12 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return ;
 
 }

Modified: branches/dxftoelmt/src/ui/dxf_polyline.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_polyline.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_polyline.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -62,8 +62,13 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
 
+
 	return ;
 }
 
@@ -131,8 +136,13 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
 
+
 	return ;
 
 
@@ -163,6 +173,11 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return;
 }

Modified: branches/dxftoelmt/src/ui/dxf_solid.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_solid.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_solid.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -91,7 +91,7 @@
 	Lineout.append(QChar(34));
 
 	//1
-	Lineout=(" x1=");
+	Lineout.append(" x1=");
 	Lineout.append(QChar(34));
 	Lineout.append(QString::number(lijn_x1,'f',2));
 	Lineout.append(QChar(34));
@@ -101,7 +101,7 @@
 	Lineout.append(QChar(34));
 
 	//2
-	Lineout=(" x2=");
+	Lineout.append(" x2=");
 	Lineout.append(QChar(34));
 	Lineout.append(QString::number(lijn_x2,'f',2));
 	Lineout.append(QChar(34));
@@ -111,7 +111,7 @@
 	Lineout.append(QChar(34));
 
 	//3
-	Lineout=(" x3=");
+	Lineout.append(" x3=");
 	Lineout.append(QChar(34));
 	Lineout.append(QString::number(lijn_x3,'f',2));
 	Lineout.append(QChar(34));
@@ -120,7 +120,7 @@
 	Lineout.append(QString::number(lijn_y3,'f',2));
 	Lineout.append(QChar(34));
 
-	Lineout=(" antialias=");
+	Lineout.append(" antialias=");
 	Lineout.append(QChar(34));
 	Lineout.append("false");
 	Lineout.append(QChar(34));
@@ -145,8 +145,13 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
 
+
 	return ;
 
 

Modified: branches/dxftoelmt/src/ui/dxf_text.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxf_text.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxf_text.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -101,6 +101,11 @@
 		BlockList[0].BlockDef.append(Lineout);
 
 	}
+	if (Entitieswitch==0)
+	{
 
+		BlockList[BlockCount].BlockDef.append(Lineout);
+	}
+
 	return ;
 }

Modified: branches/dxftoelmt/src/ui/dxftoelmt.cpp
===================================================================
--- branches/dxftoelmt/src/ui/dxftoelmt.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxftoelmt.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -273,24 +273,55 @@
 			{
 				ActiveSection=4;
 				Entitieswitch=0;
+				BlockCount=1;
 
+				LineCount4=1;
+
+				ReadLine=in.readLine();
+				Line1=ReadLine;
+				ReadLine=in.readLine();
+				Line2=ReadLine;
+				dxfLineCounter=dxfLineCounter+2;
+
 				Aantal_Tekens = Line2.length();
 				switch2=(Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDSEC", Qt::CaseSensitive)and Aantal_Tekens==6);
 
 				while(switch2==false)
 				{
 
-					ReadLine=in.readLine();
+					/*ReadLine=in.readLine();
 					Line1=ReadLine;
 					ReadLine=in.readLine();
 					Line2=ReadLine;
-					dxfLineCounter=dxfLineCounter+2;
+					dxfLineCounter=dxfLineCounter+2;*/
 
-					/*Aantal_Tekens = Line2.length();
+					switch9=false;
+
+					LineTable4[LineCount4].Line1=Line1;
+					LineTable4[LineCount4].Line2=Line2;
+					LineCount4=LineCount4+1;
+
+					Aantal_Tekens = Line2.length();
 					if (Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("BLOCK", Qt::CaseSensitive)and Aantal_Tekens==5)
 					{
 
-						switch9=(Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDBLK", Qt::CaseSensitive)and Aantal_Tekens==6);
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+						Control9=Line1.toDouble();
+						//switch9=(Control9==0  and Line2.contains("ENDBLK", Qt::CaseSensitive)and Aantal_Tekens==6);
+
+						if (Control9==0)
+						{
+							switch9=true;
+						}
 						while (switch9==false)
 						{
 							ReadLine=in.readLine();
@@ -299,22 +330,2150 @@
 							Line2=ReadLine;
 							dxfLineCounter=dxfLineCounter+2;
 
-							switch9=(Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDBLK", Qt::CaseSensitive)and Aantal_Tekens==6);
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
 
+
+							Control9=Line1.toDouble();
+							if (Control9==0)
+							{
+								switch9=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch9=1;
+
+							}
+
+
+
 						}
 
+						DXF_block Load_Block;
+
+						Load_Block.ConvertBlock(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+						switch9=false;
+
+
+					}
+
+					/*Aantal_Tekens = Line2.length();
+					if (Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDBLK", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+						Control9=Line1.toDouble();
+						if (Control9==0)
+						{
+							switch9=true;
+						}
+
+						while (switch9==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+
+							Control9=Line1.toDouble();
+							if (Control9==0)
+							{
+								switch9=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch9=1;
+
+							}
+
+
+
+						}
+
+						DXF_block Load_Block2;
+
+						Load_Block2.ConvertEndBlock(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+						BlockCount=BlockCount+1;
+
 					}*/
 
+
+					// converting block base types
+
+					switch10=0;
 					Aantal_Tekens = Line2.length();
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("ARC", Qt::CaseSensitive)and Aantal_Tekens==3)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+						DXF_Arc Load_Arc;
+
+						Load_Arc.LayerCount1=LayerCount;
+						Load_Arc.LTypeCount1=LtypeCount;
+
+						Load_Arc.ConvertArc(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("ATTDEF", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+						DXF_Attrib Load_Attrib;
+
+						Load_Attrib.ConvertAttrib (LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("ATTRIB", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+						DXF_Attdef Load_Attdef;
+
+						Load_Attdef.ConvertAttdef(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("CIRCLE", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+							switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+						DXF_Circle Load_Circle;
+
+						Load_Circle.LayerCount1=LayerCount;
+						Load_Circle.LTypeCount1=LtypeCount;
+
+						Load_Circle.ConvertCircle(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("ELLIPSE", Qt::CaseSensitive)and Aantal_Tekens==7)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("INSERT", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("LINE", Qt::CaseSensitive)and Aantal_Tekens==4)
+					{
+
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+						}
+
+						DXF_Line Load_Line;
+
+						Load_Line.LayerCount1=LayerCount;
+						Load_Line.LTypeCount1=LtypeCount;
+
+
+						Load_Line.ConvertLine(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+
+					}
+
+
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("LWPOLYLINE", Qt::CaseSensitive)and Aantal_Tekens==10)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("MLINE", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("MTEXT", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("POINT", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+							switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+
+
+						DXF_Point Load_Point;
+
+						Load_Point.LayerCount1=LayerCount;
+						Load_Point.LTypeCount1=LtypeCount;
+
+
+						Load_Point.ConvertPoint(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					switch11=0;
+					switch12=0;
+					LineCount4=1;
+					LineCount5=1;
+					LineCount6=1;
+
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("POLYLINE", Qt::CaseSensitive)and Aantal_Tekens==8)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+							switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+
+
+
+						}
+
+						// poly begin oproepen
+						DXF_Polyline Load_Polybegin;
+
+						Load_Polybegin.PolyLineBegin( LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+
+
+
+
+						Control11=0;
+						LineCount5=1;
+						switch13=0;
+						VectorCount=1;
+
+						while (switch13==0)
+						{
+							Control11=0;
+							switch11=0;
+							LineCount5=1;
+
+							Aantal_Tekens = Line2.length();
+							if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("VERTEX", Qt::CaseSensitive)and Aantal_Tekens==6)
+							{
+								ReadLine=in.readLine();
+								Line1=ReadLine;
+								ReadLine=in.readLine();
+								Line2=ReadLine;
+								dxfLineCounter=dxfLineCounter+2;
+
+								LineTable5[LineCount5].Line1=Line1;
+								LineTable5[LineCount5].Line2=Line2;
+								LineCount5=LineCount5+1;
+
+								Control11=Line1.toDouble();
+								if (Control11==0)
+								{
+									switch11=true;
+								}
+
+
+								while (switch11==false)
+								{
+									ReadLine=in.readLine();
+									Line1=ReadLine;
+									ReadLine=in.readLine();
+									Line2=ReadLine;
+									dxfLineCounter=dxfLineCounter+2;
+
+									LineTable5[LineCount5].Line1=Line1;
+									LineTable5[LineCount5].Line2=Line2;
+									LineCount5=LineCount5+1;
+
+									Control11=Line1.toDouble();
+									if (Control11==0)
+									{
+										switch11=true;
+									}
+									if (LineCount5>=2000)
+									{
+										switch11=1;
+
+									}
+
+								} //end while 11
+							}
+
+							//Polyvector oproepen
+
+							DXF_Polyline Load_Vector;
+
+							Load_Vector.PolyLineVector(VectorCount, LineCount5, BlockCount, Entitieswitch, LineTable5,LTypeDXF, LayerDXF, BlockList);
+
+							Aantal_Tekens = Line2.length();
+							Control13=Line1.toDouble();
+
+							if (Control13==0 and Line2.contains("SEQEND",Qt::CaseSensitive) and Aantal_Tekens==6)
+							{
+								switch13=true;
+							}
+							else
+							{
+								VectorCount=VectorCount+1;
+							}
+
+
+						}// end while 13
+
+
+
+
+						Aantal_Tekens = Line2.length();
+						Control12=0;
+						if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("SEQEND", Qt::CaseSensitive)and Aantal_Tekens==6)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable6[LineCount6].Line1=Line1;
+							LineTable6[LineCount6].Line2=Line2;
+							LineCount6=LineCount6+1;
+
+							Control12=Line1.toDouble();
+							if (Control12==0)
+							{
+								switch12=true;
+							}
+
+
+							while (switch12==false)
+							{
+								ReadLine=in.readLine();
+								Line1=ReadLine;
+								ReadLine=in.readLine();
+								Line2=ReadLine;
+								dxfLineCounter=dxfLineCounter+2;
+
+								LineTable6[LineCount6].Line1=Line1;
+								LineTable6[LineCount6].Line2=Line2;
+								LineCount6=LineCount6+1;
+								switch12=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+								Control12=Line1.toDouble();
+								if (Control12==0)
+								{
+									switch12=true;
+								}
+								if (LineCount6>=2000)
+								{
+									switch10=1;
+
+								}
+
+							}
+
+						}
+
+						DXF_Polyline Load_Polyend;
+
+						Load_Polyend.PolyLineEnd( LineCount6, BlockCount, Entitieswitch, LineTable5,LTypeDXF, LayerDXF, BlockList);
+
+						//end polyline oproepen
+
+						LineCount4=1;
+						LineCount5=1;
+						LineCount6=1;
+
+
+
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("SPLINE", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("TEXT", Qt::CaseSensitive)and Aantal_Tekens==4)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+
+						DXF_Text Load_Text;
+
+						Load_Text.ConvertText(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+
+					}
+
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("XLINE", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("VERTEX", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("3DFACE", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("3DSOLID", Qt::CaseSensitive)and Aantal_Tekens==7)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("ACAD_PROXY_ENTITY", Qt::CaseSensitive)and Aantal_Tekens==17)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("BODY", Qt::CaseSensitive)and Aantal_Tekens==4)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("DIMENSION", Qt::CaseSensitive)and Aantal_Tekens==9)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("HATCH", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("IMAGE", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("LEADER", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("OLEFRAME", Qt::CaseSensitive)and Aantal_Tekens==8)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("OLE2FRAME", Qt::CaseSensitive)and Aantal_Tekens==9)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("RAY", Qt::CaseSensitive)and Aantal_Tekens==3)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("REGION", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("SEQEND", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("SHAPE", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("SOLID", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+
+						DXF_solid Load_Solid;
+
+						Load_Solid.LayerCount1=LayerCount;
+						Load_Solid.LTypeCount1=LtypeCount;
+
+						Load_Solid.ConvertSolid(LineCount4, BlockCount, Entitieswitch, LineTable4, LTypeDXF, LayerDXF, BlockList);
+
+
+
+						LineCount4=1;
+
+
+
+					}
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("TOLERANCE", Qt::CaseSensitive)and Aantal_Tekens==9)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("TRACE", Qt::CaseSensitive)and Aantal_Tekens==5)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+						}
+
+					}
+
+
+					Aantal_Tekens = Line2.length();
+					switch10=0;
+					if (Line1.contains(" 0",Qt::CaseSensitive)and Line2.contains("VIEWPORT", Qt::CaseSensitive)and Aantal_Tekens==8)
+					{
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						//LineTable4[LineCount4].Line1=Line1;
+						//LineTable4[LineCount4].Line2=Line2;
+						//LineCount4=LineCount4+1;
+
+
+						//switch10=(Line1.contains(" 0",Qt::CaseSensitive) and 0);
+						Control10=Line1.toDouble();
+						if (Control10==0)
+						{
+							switch10=true;
+						}
+
+
+						while (switch10==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							//LineTable4[LineCount4].Line1=Line1;
+							//LineTable4[LineCount4].Line2=Line2;
+							//LineCount4=LineCount4+1;
+							//switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
+
+							Control10=Line1.toDouble();
+							if (Control10==0)
+							{
+								switch10=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch10=1;
+
+							}
+
+
+						}
+
+					}
+
+
+
+
+
+
+
+
+					// end converting block base types
+
+
+					Aantal_Tekens = Line2.length();
+					if (Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDBLK", Qt::CaseSensitive)and Aantal_Tekens==6)
+					{
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+						ReadLine=in.readLine();
+						Line1=ReadLine;
+						ReadLine=in.readLine();
+						Line2=ReadLine;
+						dxfLineCounter=dxfLineCounter+2;
+
+						LineTable4[LineCount4].Line1=Line1;
+						LineTable4[LineCount4].Line2=Line2;
+						LineCount4=LineCount4+1;
+
+
+						Control9=Line1.toDouble();
+						if (Control9==0)
+						{
+							switch9=true;
+						}
+
+						while (switch9==false)
+						{
+							ReadLine=in.readLine();
+							Line1=ReadLine;
+							ReadLine=in.readLine();
+							Line2=ReadLine;
+							dxfLineCounter=dxfLineCounter+2;
+
+							LineTable4[LineCount4].Line1=Line1;
+							LineTable4[LineCount4].Line2=Line2;
+							LineCount4=LineCount4+1;
+
+
+							Control9=Line1.toDouble();
+							if (Control9==0)
+							{
+								switch9=true;
+							}
+							if (LineCount4>=2000)
+							{
+								switch9=1;
+
+							}
+
+
+
+						}
+
+						DXF_block Load_Block2;
+
+						Load_Block2.ConvertEndBlock(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
+
+						LineCount4=1;
+						BlockCount=BlockCount+1;
+
+					}
+
+
+					/*ReadLine=in.readLine();
+					Line1=ReadLine;
+					ReadLine=in.readLine();
+					Line2=ReadLine;
+					dxfLineCounter=dxfLineCounter+2;*/
+
+
+
+					Aantal_Tekens = Line2.length();
 					switch2=(Line1.contains(" 0", Qt::CaseSensitive) and Line2.contains("ENDSEC", Qt::CaseSensitive)and Aantal_Tekens==6);
 
 				}
 
-				ReadLine=in.readLine();
+				/*ReadLine=in.readLine();
 				Line1=ReadLine;
 				ReadLine=in.readLine();
 				Line2=ReadLine;
-				dxfLineCounter=dxfLineCounter+2;
+				dxfLineCounter=dxfLineCounter+2;*/
 
 			}
 
@@ -325,7 +2484,7 @@
 			{
 				ActiveSection=5;
 				Entitieswitch=1;
-				BlockCount=0;
+				//BlockCount=0;
 
 				//Selector();
 
@@ -375,8 +2534,8 @@
 							LineTable4[LineCount4].Line1=Line1;
 							LineTable4[LineCount4].Line2=Line2;
 							LineCount4=LineCount4+1;
-							switch10=(Line1.contains(" 0",Qt::CaseSensitive)and 0);
 
+
 							Control10=Line1.toDouble();
 							if (Control10==0)
 							{
@@ -392,6 +2551,9 @@
 
 						DXF_Arc Load_Arc;
 
+						Load_Arc.LayerCount1=LayerCount;
+						Load_Arc.LTypeCount1=LtypeCount;
+
 						Load_Arc.ConvertArc(LineCount4, BlockCount, Entitieswitch, LineTable4,LTypeDXF, LayerDXF, BlockList);
 
 						LineCount4=1;

Modified: branches/dxftoelmt/src/ui/dxftoelmt.h
===================================================================
--- branches/dxftoelmt/src/ui/dxftoelmt.h	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/dxftoelmt.h	2014-10-05 11:26:04 UTC (rev 3346)
@@ -24,6 +24,7 @@
 #include "dxf_text.h"
 #include "dxf_polyline.h"
 #include "dxf_solid.h"
+#include "dxf_block.h"
 
 
 class dxfTOelmt : public DXF_Data

Modified: branches/dxftoelmt/src/ui/mainwindow.cpp
===================================================================
--- branches/dxftoelmt/src/ui/mainwindow.cpp	2014-10-05 00:42:20 UTC (rev 3345)
+++ branches/dxftoelmt/src/ui/mainwindow.cpp	2014-10-05 11:26:04 UTC (rev 3346)
@@ -68,6 +68,8 @@
 
 		ui->statusBar->clearMessage();
 
+		 ui->ExportToELMT->clear();
+
 		//Filename=ui->m_elmt_name_le->placeholderText();
 
 		StatusBarMessage="Start of DXF convertion";


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