This wiki is out of date, use the continuation of this wiki instead

Map xput

From FenixWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 18:29, 30 April 2007 (edit)
Woody (Talk | contribs)

← Previous diff
Revision as of 01:04, 1 May 2007 (edit) (undo)
Sandman (Talk | contribs)

Next diff →
Line 3: Line 3:
==Definition== ==Definition==
-'''INT''' map_xput ( <'''INT''' fileID> , <'''INT''' destinationGraphID> , <'''INT''' originGraphID> , <'''INT''' x> , <'''INT''' y> , <'''INT''' angle> , <'''INT''' size> , <'''INT''' flags> )+'''INT''' map_xput ( <'''INT''' fileID> , <'''INT''' destinationGraphID> , <'''INT''' originGraphID> , <'''INT''' x> , <'''INT''' y> , <'''INT''' angle> , <'''INT''' size> , <'''INT''' blitflags> )
-Draws a [[graph]] onto another graph. Use [[map_put]] if you don't need the advanced parameters.+Draws ([[blit]]s) a [[graph]] onto another graph.
 + 
 +If the advanced parameters aren't needed, [[map_put]]() can be used. If a graph from one [[file]] needs to be drawn onto another graph in a different file, or a separate width and height scaling is needed, [[map_xputnp]]() can be used.
== Parameters == == Parameters ==
{| {|
| '''INT''' fileID || - The [[file]] that holds the graphs. | '''INT''' fileID || - The [[file]] that holds the graphs.
 +
|- |-
| '''INT''' destinationGraphID || - The [[graph]] to draw on. | '''INT''' destinationGraphID || - The [[graph]] to draw on.
Line 23: Line 26:
| '''INT''' size || - What [[size]] to draw the graph at. | '''INT''' size || - What [[size]] to draw the graph at.
|- |-
-| '''INT''' flags || - What [[flags]] to draw the graph with.+| '''INT''' blitflags || - What [[blit flags]] to draw the graph with.
|} |}
Line 29: Line 32:
'''INT''' : [[true]] '''INT''' : [[true]]
-== Throws ==+== Notes ==
 +The x and y parameters denote where to draw the graph, that is, where the center of the to be drawn graph will be. Blit flags can be used to give the drawing (blitting) a special effect.
-who knows+When angle is 0 and size is 100, the speed is greater, because the graph doesn't need rotating or scaling.
 + 
 +== Errors ==
 +{|
 +| Unsupported color depth || - The origin graph's color depth is greater than the destination graph's.
 +|}
== Example == == Example ==
Line 39: Line 48:
destgraph; destgraph;
origgraph; origgraph;
- 
Begin Begin
- set_mode(640,480,16);+ // Set the mode to 16bit and some resolution
- + set_mode(320,200,16);
 + 
 + // Makes the destination graphic a red square
destgraph=new_map(100,100,16); destgraph=new_map(100,100,16);
- map_clear(0,destgraph,rgb(255,0,0)); //makes the destination graphic a red square+ map_clear(0,destgraph,rgb(255,0,0));
- origgraph=new_map(50,50,16);+ // Makes the origin graphic a blue square
- map_clear(0,origgraph,rgb(0,0,255)); //makes the origin graphic a blue square+ origgraph=new_map(100,100,16);
 + map_clear(0,origgraph,rgb(0,0,255));
- map_xput(0,destgraph,origgraph,50,50,rand(-180000,180000),rand(50,150),4); //draws the blue square on the center of the red square transparently, at a random angle and a random size+ // Draws the blue square on the center of the red square transparently, at a random angle and a random size
 + map_xput(0,destgraph,origgraph,50,50,rand(-180000,180000),rand(50,150),4);
 + map_xput(0,destgraph,origgraph,50,50,rand(-180000,180000),rand(50,150),4);
- Loop+ // Shows the final graph
 + put(0,destgraph,160,100);
- put(0,destgraph,320,240); //shows the final graph+ Loop
- + frame;
- frame;+
End End
End End
- 
</pre> </pre>
Used in example: [[set_mode]](), [[new_map]](), [[map_clear]](), [[put]]() Used in example: [[set_mode]](), [[new_map]](), [[map_clear]](), [[put]]()
 +
 +This will result in something like:<br />
 +http://wwwhome.cs.utwente.nl/~bergfi/fenix/wiki/map_xput.PNG

Revision as of 01:04, 1 May 2007


Contents

Definition

INT map_xput ( <INT fileID> , <INT destinationGraphID> , <INT originGraphID> , <INT x> , <INT y> , <INT angle> , <INT size> , <INT blitflags> )

Draws (blits) a graph onto another graph.

If the advanced parameters aren't needed, map_put() can be used. If a graph from one file needs to be drawn onto another graph in a different file, or a separate width and height scaling is needed, map_xputnp() can be used.

Parameters

INT fileID - The file that holds the graphs.
INT destinationGraphID - The graph to draw on.
INT originGraphID - The graph to draw with.
INT x - Where on the destination graph's x-axis to put the graph.
INT y - Where on the destination graph's y-axis to put the graph.
INT angle - What angle to draw the graph at.
INT size - What size to draw the graph at.
INT blitflags - What blit flags to draw the graph with.

Returns

INT : true

Notes

The x and y parameters denote where to draw the graph, that is, where the center of the to be drawn graph will be. Blit flags can be used to give the drawing (blitting) a special effect.

When angle is 0 and size is 100, the speed is greater, because the graph doesn't need rotating or scaling.

Errors

Unsupported color depth - The origin graph's color depth is greater than the destination graph's.

Example

Program watskeburt;
Global
    destgraph;
    origgraph;
Begin

    // Set the mode to 16bit and some resolution
    set_mode(320,200,16);

    // Makes the destination graphic a red square
    destgraph=new_map(100,100,16);
    map_clear(0,destgraph,rgb(255,0,0));

    // Makes the origin graphic a blue square
    origgraph=new_map(100,100,16);
    map_clear(0,origgraph,rgb(0,0,255));

    // Draws the blue square on the center of the red square transparently, at a random angle and a random size
    map_xput(0,destgraph,origgraph,50,50,rand(-180000,180000),rand(50,150),4);
    map_xput(0,destgraph,origgraph,50,50,rand(-180000,180000),rand(50,150),4);

    // Shows the final graph
    put(0,destgraph,160,100);

    Loop
         frame;
    End
End

Used in example: set_mode(), new_map(), map_clear(), put()

This will result in something like:
map_xput.PNG

Personal tools