The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Draft::Protozoa::Eml - CAD drawing-object base class

SYNOPSIS

This class is DEPRECATED, use YAML formatted file instead.

A CAD drawing object that consists of a single file that resembles an rfc822 email message.

DESCRIPTION

If you find yourself using this base-class directly, then you are probably doing something wrong.

USAGE

Create an object by supplying the 'new' method with a file-path:

use Draft::Drawing::Eml;
my $foo = Draft::Drawing::Eml->new ('/path/to/file.eml');

Read/Parse an existing file with the Read method:

$foo->Read;

Currently the file-format is a simple series of key->value declarations, one per line:

Pi: 3.1418
Author: Plato
Author: Descartes

This might become a perl structure like this:

'/path/to/file.eml' => bless( {
  'pi' => [ '3.1418' ],
  'author' => [ 'Plato', 'Descartes' ],
  '_path' => '/path/to/file.eml'
}, 'Draft::Drawing::Eml' )

Objects can be moved in the world-space:

$foo->Move ([10, 5, 0]);

This edits the file on the filesystem in one atomic operation. This is a permanent operation - If you find that you didn't want to move the object, you might want to investigate using cvs for your data.

Query the type and version of the object like so:

my $type = $self->Type ($foo);
my $version = $self->Version ($foo);