• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 193
  • Last Modified:

saving figures

I want to save a file which contains certain fiures, both regular and random. I want to save the regular figures by saving their pattern but the random figures cannot be saved in this manner, they have to be saved by some other method say using bitmaps. But a single file can contain both regular as well as random figures and I want to save these figures as a single file. What can be done?
0
Abbas071098
Asked:
Abbas071098
  • 3
  • 2
1 Solution
 
bfwizardCommented:
well assuming you know how to change your random figures in to bitmaps...saving is a snap.  Since The CBitmap object is inherited from CObject you can just use its serialize function.  Also Assuming all you data is in the document you just need to override the document's serialze function:




void CMyDocDoc::Serialize(CArchive& ar)
{
      if (ar.IsStoring())
      {
                  
            
      }
      else
      {
                  
            
      }

      CMyBitMapObject.Serialize(ar);
      CMyRegularListofPoints.Serialize(ar);///assuming some sort of list or you could use the braces up above in Isstoringex:  ar<<point1<<point2....ect or in the else...ar>>point1>>point2
      

}


if you need more detail comment here
0
 
Abbas071098Author Commented:
bfwizard, the solution that you told me, will it save the two types of figures in two different files. And if in the the same file what will be the file format. My problem is I don't want to save the regular figure as the bitmap but as a metafile. But there should be only one file as output (saved) file.
0
 
duneramCommented:
Why not create a special header that has a flag for bitmap follows or not.

in the header if a bitmap follows, you just set the flag.
if a bitmap doesn't follow you don't set the flag.

Then in the header you store the length of the 'object'

When writing you make a header, append header to file, then append data to file.

When reading, you read a header,
   if its a bitmap you load it as a bitmap.
   if its not a bitmap, you load it and then do your processing.


You can use the fread and fwrite to accomplish this task....  with these functions you can load from a file directly into a structure and store from a structure directly to a file.



0
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
Abbas071098Author Commented:
I want different types of figures to be stored in the same file sorry I am not getting the correct answer so I am gonna delete the question
0
 
duneramCommented:
The answer I gave you would have permitted you to store different types of figures in the same file.  It allowed multiple objects within a file with each object having its own header.


0
 
duneramCommented:
here is an example

struct
{
    short type;
    long length;
} hdr;

Setting hdr.type to 1 would mean one thing.

setting hdr.type to 2 would be for a different type of object.

In your single file you would place these objects back to back.
like this:

hdr
obj 1
hdr
obj 2
hdr
obj 3

each hdr would have  a  specific type and you would use the method for the type to properly decode the binary information into the right format.

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: CompTIA Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now