www.pudn.com > DxfFiles_src.zip > CDxf.cpp
// CDxf.cpp: implementation of the CDxf class. // // // Written by Claude Gagnon, november 1999 // gagnon.claude@hydro.qc.ca // Copyright (c) 1999 // // // // // ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "CDxf.h" #include// For use with I/O files streams #ifdef _DEBUG #undef THIS_FILE static char THIS_FILE[]=__FILE__; #define new DEBUG_NEW #endif ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CDxf::CDxf() { } CDxf::~CDxf() { } void CDxf::FichierDxf_Debut () { // Creation of an output stream objet in text mode. // ios::out : defaut mode ofstream FichierDxf ("TestDxf.dxf", ios::out); FichierDxf << 0 << endl; FichierDxf << "SECTION" << endl; FichierDxf << 2 << endl; FichierDxf << "ENTITIES" << endl; FichierDxf.close(); } void CDxf::FichierDxf_Fin () { // Creation of an output stream objet in text mode. // ios::app : append ofstream FichierDxf ("TestDxf.dxf", ios::app); FichierDxf << 0 << endl; FichierDxf << "ENDSEC" << endl; FichierDxf << 0 << endl; FichierDxf << "EOF"; FichierDxf.close(); } void CDxf::Rectangle () { // 500 x 1500 rectangle // Creation of an output stream objet in text mode. // ios::app : append ofstream FichierDxf ("TestDxf.dxf", ios::app); // Draw the rectangle FichierDxf << 0 << endl; FichierDxf << "LINE" << endl; FichierDxf << 8 << endl; // Group code for layer name FichierDxf << 0 << endl; // Layer number FichierDxf << 10 << endl; // Start point of line FichierDxf << 0.0 << endl; // X in WCS coordinates FichierDxf << 20 << endl; FichierDxf << 0.0 << endl; // Y in WCS coordinates FichierDxf << 30 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 11 << endl; // End point of line FichierDxf << 1500.0 << endl; // X in WCS coordinates FichierDxf << 21 << endl; FichierDxf << 0.0 << endl; // Y in WCS coordinates FichierDxf << 31 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 0 << endl; FichierDxf << "LINE" << endl; FichierDxf << 8 << endl; // Group code for layer name FichierDxf << 0 << endl; // Layer number FichierDxf << 10 << endl; // Start point of line FichierDxf << 1500.0 << endl; // X in WCS coordinates FichierDxf << 20 << endl; FichierDxf << 0.0 << endl; // Y in WCS coordinates FichierDxf << 30 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 11 << endl; // End point of line FichierDxf << 1500.0 << endl; // X in WCS coordinates FichierDxf << 21 << endl; FichierDxf << 500.0 << endl; // Y in WCS coordinates FichierDxf << 31 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 0 << endl; FichierDxf << "LINE" << endl; FichierDxf << 8 << endl; // Group code for layer name FichierDxf << 0 << endl; // Layer number FichierDxf << 10 << endl; // Start point of line FichierDxf << 1500.0 << endl; // X in WCS coordinates FichierDxf << 20 << endl; FichierDxf << 500.0 << endl; // Y in WCS coordinates FichierDxf << 30 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 11 << endl; // End point of line FichierDxf << 0.0 << endl; // X in WCS coordinates FichierDxf << 21 << endl; FichierDxf << 500.0 << endl; // Y in WCS coordinates FichierDxf << 31 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 0 << endl; FichierDxf << "LINE" << endl; FichierDxf << 8 << endl; // Group code for layer name FichierDxf << 0 << endl; // Layer number FichierDxf << 10 << endl; // Start point of line FichierDxf << 0.0 << endl; // X in WCS coordinates FichierDxf << 20 << endl; FichierDxf << 500.0 << endl; // Y in WCS coordinates FichierDxf << 30 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf << 11 << endl; // End point of line FichierDxf << 0.0 << endl; // X in WCS coordinates FichierDxf << 21 << endl; FichierDxf << 0.0 << endl; // Y in WCS coordinates FichierDxf << 31 << endl; FichierDxf << 0.0 << endl; // Z in WCS coordinates FichierDxf.close(); } void CDxf::Circle () { // 1000 diameter circle // Creation of an output stream objet in text mode. // ios::app : append ofstream FichierDxf ("TestDxf.dxf", ios::app); // Draw the circle FichierDxf << 0 << endl; FichierDxf << "CIRCLE" << endl; FichierDxf << 8 << endl; // Group code for layer name FichierDxf << 0 << endl; // Layer number FichierDxf << 10 << endl; // Center point of circle FichierDxf << 0.0 << endl; // X in OCS coordinates FichierDxf << 20 << endl; FichierDxf << 0.0 << endl; // Y in OCS coordinates FichierDxf << 30 << endl; FichierDxf << 0.0 << endl; // Z in OCS coordinates FichierDxf << 40 << endl; // radius of circle FichierDxf << 500.0 << endl; FichierDxf.close(); }