ucs.c

来自「AutoCAD DWG-file viewer」· C语言 代码 · 共 97 行

C
97
字号
/****************************************************************/
/*			COPYRIGHT NOTICE			*/
/*			----------------			*/
/*  All software in this listing remain the strict copyright	*/
/*  of Ilija Kovacevic and cannot be copied or used in any way	*/
/*  except by written permission of Ilija Kovacevic.		*/
/*								*/
/*	Copyright (c) 1992 Ilija Kovacevic			*/
/*	www.kov.com   email ilija@kov.com			*/
/****************************************************************/

#include "dwgin.h"

PUBLIC AcadUcs *AcadUcs__create( void )

{
return( ( AcadUcs * )get_memory( sizeof( AcadUcs ) ) );
}


PUBLIC void AcadUcs__delete( AcadUcs *me )

{
free( ( char * )me );
}


PUBLIC void AcadUcs__read( AcadUcs *me )

{
INT16 unknown;

if ( debugger ) dprintf( "\nUCS ------------------------------------------------------\n" );
get_UINT8( &me->flags );
get_INT16( &unknown );
get_array( &me->name,sizeof( me->name ) );
get_DOUBLE( &me->x );
get_DOUBLE( &me->y );
get_DOUBLE( &me->z );
get_DOUBLE( &me->x_X_axis );
get_DOUBLE( &me->y_X_axis );
get_DOUBLE( &me->z_X_axis );
get_DOUBLE( &me->x_Y_axis );
get_DOUBLE( &me->y_Y_axis );
get_DOUBLE( &me->z_Y_axis );
}


PUBLIC void AcadUcs__dxfout( AcadUcs *me )

{
dxf_string( 0,"UCS" );
dxf_string( 2,me->name );
dxf_char( 70,me->flags );
dxf_DOUBLE( 10,me->x );
dxf_DOUBLE( 20,me->y );
dxf_DOUBLE( 30,me->z );
dxf_DOUBLE( 11,me->x_X_axis );
dxf_DOUBLE( 21,me->y_X_axis );
dxf_DOUBLE( 31,me->z_X_axis );
dxf_DOUBLE( 12,me->x_Y_axis );
dxf_DOUBLE( 22,me->y_Y_axis );
dxf_DOUBLE( 32,me->z_Y_axis );
}


PUBLIC void AcadUcs__dump_to_debug_file( AcadUcs *me )

{
dprintf( "UCS" );
dprintf( "\tname [%s]\n",me->name );
dprintf( "\tflags %xH\n",me->flags );
dprintf( "\torigin %lf,%lf,%lf\n",me->x,me->y,me->z );
dprintf( "\t%x axis lf,%lf,%lf\n",me->x_X_axis,me->y_X_axis,me->z_X_axis );
dprintf( "\t%y axis lf,%lf,%lf\n",me->x_Y_axis,me->y_Y_axis,me->z_Y_axis );
}


PUBLIC void AcadUcs__write( AcadUcs *me )

{
put_UINT8( me->flags );
put_array( me->name,sizeof( me->name ) );
put_INT16( 0 );
put_DOUBLE( me->x );
put_DOUBLE( me->y );
put_DOUBLE( me->z );
put_DOUBLE( me->x_X_axis );
put_DOUBLE( me->y_X_axis );
put_DOUBLE( me->z_X_axis );
put_DOUBLE( me->x_Y_axis );
put_DOUBLE( me->y_Y_axis );
put_DOUBLE( me->z_Y_axis );
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?