mirror of
https://github.com/aseprite/aseprite.git
synced 2025-01-15 19:52:05 +00:00
1720 lines
60 KiB
HTML
1720 lines
60 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
|
||
<html><head><title>
|
||
ASE Scripting Manual
|
||
</title>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||
<meta http-equiv="Content-Style-Type" content="text/css">
|
||
<style type="text/css" title="Default"><!--
|
||
A.xref:link {
|
||
color: blue;
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.xref:visited {
|
||
color: blue;
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.xref:hover {
|
||
color: blue;
|
||
text-decoration: underline;
|
||
background: rgb(220, 220, 220);
|
||
}
|
||
A.xref:active {
|
||
color: red;
|
||
text-decoration: none;
|
||
background: rgb(255, 204, 50);
|
||
}
|
||
A.eref:link {
|
||
color: blue;
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.eref:visited {
|
||
color: blue;
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.eref:hover {
|
||
color: blue;
|
||
text-decoration: underline;
|
||
background: rgb(255, 165, 214);
|
||
}
|
||
A.eref:active {
|
||
color: red;
|
||
text-decoration: none;
|
||
background: rgb(255, 204, 50);
|
||
}
|
||
A.autotype:link {
|
||
color: rgb(64, 64, 255);
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.autotype:visited {
|
||
color: rgb(64, 64, 255);
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
A.autotype:hover {
|
||
color: rgb(64, 64, 255);
|
||
text-decoration: underline;
|
||
background: transparent;
|
||
}
|
||
A.autotype:active {
|
||
color: red;
|
||
text-decoration: none;
|
||
background: transparent;
|
||
}
|
||
blockquote.xref {
|
||
font-family: helvetica, verdana, serif;
|
||
font-size: smaller;
|
||
border: thin solid rgb(220, 220, 220);
|
||
color: black;
|
||
background: rgb(240, 240, 240);
|
||
}
|
||
blockquote.eref {
|
||
font-family: helvetica, verdana, serif;
|
||
font-size: smaller;
|
||
border: thin solid rgb(255, 165, 214);
|
||
color: black;
|
||
background: rgb(255, 201, 230);
|
||
}
|
||
blockquote.code {
|
||
border: thin solid rgb(255, 234, 190);
|
||
color: black;
|
||
background: rgb(255, 255, 205);
|
||
}
|
||
blockquote.text {
|
||
border: thin solid rgb(190, 234, 255);
|
||
color: black;
|
||
background: rgb(225, 255, 255);
|
||
}
|
||
div.al-api {
|
||
padding-left: 0.5em;
|
||
color: black;
|
||
background: rgb(255, 234, 100);
|
||
font-weight: bold;
|
||
border-bottom: medium solid rgb(255, 204, 51);
|
||
border-left: medium solid rgb(255, 204, 51);
|
||
margin-top: 2em;
|
||
}
|
||
div.al-api-cont {
|
||
padding-left: 0.5em;
|
||
color: black;
|
||
background: rgb(255, 234, 100);
|
||
font-weight: bold;
|
||
border-bottom: medium solid rgb(255, 204, 51);
|
||
border-left: medium solid rgb(255, 204, 51);
|
||
margin-top: -1em;
|
||
}
|
||
div.faq-shift-to-right {
|
||
margin-left: 2em;
|
||
}
|
||
div.al-back-to-contents {
|
||
text-align: center;
|
||
font-family: sans-serif;
|
||
margin-top: 1em;
|
||
font-weight: bold;
|
||
/* Removing the comments of the next line create longer pages */
|
||
/* margin-bottom: 100em; */
|
||
}
|
||
|
||
|
||
--></style>
|
||
</head><body bgcolor=white text=black link="#0000ee" alink="#ff0000" vlink="#551a8b">
|
||
<pre>
|
||
|
||
ASE Scripting 0.4
|
||
|
||
By <a href="http://www.davidcapello.com.ar/">David A. Capello</a>, 2005.
|
||
|
||
</pre>
|
||
|
||
|
||
<p><br>
|
||
#include <std_disclaimer.h>
|
||
<blockquote class="text"><i>
|
||
"I do not accept responsibility for any effects, adverse or otherwise,
|
||
that this code may have on you, your computer, your sanity, your dog,
|
||
and anything else that you can think of. Use it at your own risk."
|
||
</i></blockquote>
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Contents">Contents</a></h1>
|
||
|
||
<p>
|
||
<ul>
|
||
<li><a href="#Introduction">Introduction</a>
|
||
<li><a href="#Basic Lua Programming">Basic Lua Programming</a>
|
||
<li><a href="#ImgType">ImgType</a>
|
||
<li><a href="#Standard routines">Standard routines</a>
|
||
<li><a href="#String routines">String routines</a>
|
||
<li><a href="#Math routines">Math routines</a>
|
||
<li><a href="#File routines">File routines</a>
|
||
<li><a href="#Objects">Objects</a>
|
||
<li><a href="#Image">Image</a>
|
||
<li><a href="#Frame">Frame</a>
|
||
<li><a href="#Layer">Layer</a>
|
||
<li><a href="#Mask">Mask</a>
|
||
<li><a href="#Path">Path</a>
|
||
<li><a href="#Sprite">Sprite</a>
|
||
<li><a href="#Stock">Stock</a>
|
||
<li><a href="#Undo">Undo</a>
|
||
<li><a href="#Effect">Effect</a>
|
||
<li><a href="#ConvMatr">ConvMatr</a>
|
||
<li><a href="#Curve">Curve</a>
|
||
<li><a href="#CurvePoint">CurvePoint</a>
|
||
<li><a href="#JEvent">JEvent</a>
|
||
<li><a href="#JList">JList</a>
|
||
<li><a href="#JRect">JRect</a>
|
||
<li><a href="#JRegion">JRegion</a>
|
||
<li><a href="#JWidget">JWidget</a>
|
||
<li><a href="#Index">Index</a>
|
||
</ul>
|
||
<ul>
|
||
<li><a href="#Introduction">Introduction</a>
|
||
<li><a href="#Basic Lua Programming">Basic Lua Programming</a>
|
||
<li><a href="#ImgType">ImgType</a>
|
||
<li><a href="#Standard routines">Standard routines</a>
|
||
<ul>
|
||
<li><a href="#dofile">dofile</a>
|
||
<li><a href="#include">include</a>
|
||
<li><a href="#MAX">MAX</a>
|
||
<li><a href="#MID">MID</a>
|
||
<li><a href="#MIN">MIN</a>
|
||
<li><a href="#print">print</a>
|
||
<li><a href="#rand">rand</a>
|
||
</ul>
|
||
<li><a href="#String routines">String routines</a>
|
||
<ul>
|
||
<li><a href="#_">_</a>
|
||
<li><a href="#strcmp">strcmp</a>
|
||
</ul>
|
||
<li><a href="#Math routines">Math routines</a>
|
||
<ul>
|
||
<li><a href="#acos">acos</a>
|
||
<li><a href="#asin">asin</a>
|
||
<li><a href="#atan">atan</a>
|
||
<li><a href="#atan2">atan2</a>
|
||
<li><a href="#ceil">ceil</a>
|
||
<li><a href="#cos">cos</a>
|
||
<li><a href="#cosh">cosh</a>
|
||
<li><a href="#exp">exp</a>
|
||
<li><a href="#fabs">fabs</a>
|
||
<li><a href="#floor">floor</a>
|
||
<li><a href="#hypot">hypot</a>
|
||
<li><a href="#log">log</a>
|
||
<li><a href="#log10">log10</a>
|
||
<li><a href="#pow">pow</a>
|
||
<li><a href="#sin">sin</a>
|
||
<li><a href="#sinh">sinh</a>
|
||
<li><a href="#sqrt">sqrt</a>
|
||
<li><a href="#tan">tan</a>
|
||
<li><a href="#tanh">tanh</a>
|
||
</ul>
|
||
<li><a href="#File routines">File routines</a>
|
||
<ul>
|
||
<li><a href="#file_exists">file_exists</a>
|
||
<li><a href="#get_filename">get_filename</a>
|
||
</ul>
|
||
<li><a href="#Objects">Objects</a>
|
||
<li><a href="#Image">Image</a>
|
||
<ul>
|
||
<li><a href="#image_clear">image_clear</a>
|
||
<li><a href="#image_convert">image_convert</a>
|
||
<li><a href="#image_copy">image_copy</a>
|
||
<li><a href="#image_count_diff">image_count_diff</a>
|
||
<li><a href="#image_crop">image_crop</a>
|
||
<li><a href="#image_ellipse">image_ellipse</a>
|
||
<li><a href="#image_ellipsefill">image_ellipsefill</a>
|
||
<li><a href="#image_free">image_free</a>
|
||
<li><a href="#image_getpixel">image_getpixel</a>
|
||
<li><a href="#image_hline">image_hline</a>
|
||
<li><a href="#image_line">image_line</a>
|
||
<li><a href="#image_merge">image_merge</a>
|
||
<li><a href="#image_new">image_new</a>
|
||
<li><a href="#image_new_copy">image_new_copy</a>
|
||
<li><a href="#image_putpixel">image_putpixel</a>
|
||
<li><a href="#image_rect">image_rect</a>
|
||
<li><a href="#image_rectfill">image_rectfill</a>
|
||
<li><a href="#image_vline">image_vline</a>
|
||
</ul>
|
||
<li><a href="#Frame">Frame</a>
|
||
<ul>
|
||
<li><a href="#frame_free">frame_free</a>
|
||
<li><a href="#frame_is_link">frame_is_link</a>
|
||
<li><a href="#frame_new">frame_new</a>
|
||
<li><a href="#frame_new_copy">frame_new_copy</a>
|
||
<li><a href="#frame_set_frpos">frame_set_frpos</a>
|
||
<li><a href="#frame_set_image">frame_set_image</a>
|
||
<li><a href="#frame_set_opacity">frame_set_opacity</a>
|
||
<li><a href="#frame_set_position">frame_set_position</a>
|
||
</ul>
|
||
<li><a href="#Layer">Layer</a>
|
||
<ul>
|
||
<li><a href="#layer_add_frame">layer_add_frame</a>
|
||
<li><a href="#layer_add_layer">layer_add_layer</a>
|
||
<li><a href="#layer_flatten">layer_flatten</a>
|
||
<li><a href="#layer_free">layer_free</a>
|
||
<li><a href="#layer_get_frame">layer_get_frame</a>
|
||
<li><a href="#layer_get_next">layer_get_next</a>
|
||
<li><a href="#layer_get_prev">layer_get_prev</a>
|
||
<li><a href="#layer_is_image">layer_is_image</a>
|
||
<li><a href="#layer_is_set">layer_is_set</a>
|
||
<li><a href="#layer_move_layer">layer_move_layer</a>
|
||
<li><a href="#layer_new">layer_new</a>
|
||
<li><a href="#layer_new_copy">layer_new_copy</a>
|
||
<li><a href="#layer_new_with_image">layer_new_with_image</a>
|
||
<li><a href="#layer_remove_frame">layer_remove_frame</a>
|
||
<li><a href="#layer_remove_layer">layer_remove_layer</a>
|
||
<li><a href="#layer_render">layer_render</a>
|
||
<li><a href="#layer_set_blend_mode">layer_set_blend_mode</a>
|
||
<li><a href="#layer_set_name">layer_set_name</a>
|
||
<li><a href="#layer_set_new">layer_set_new</a>
|
||
</ul>
|
||
<li><a href="#Mask">Mask</a>
|
||
<ul>
|
||
<li><a href="#mask_by_color">mask_by_color</a>
|
||
<li><a href="#mask_crop">mask_crop</a>
|
||
<li><a href="#mask_free">mask_free</a>
|
||
<li><a href="#mask_intersect">mask_intersect</a>
|
||
<li><a href="#mask_invert">mask_invert</a>
|
||
<li><a href="#mask_is_empty">mask_is_empty</a>
|
||
<li><a href="#mask_merge">mask_merge</a>
|
||
<li><a href="#mask_move">mask_move</a>
|
||
<li><a href="#mask_new">mask_new</a>
|
||
<li><a href="#mask_new_copy">mask_new_copy</a>
|
||
<li><a href="#mask_none">mask_none</a>
|
||
<li><a href="#mask_replace">mask_replace</a>
|
||
<li><a href="#mask_set_name">mask_set_name</a>
|
||
<li><a href="#mask_subtract">mask_subtract</a>
|
||
<li><a href="#mask_union">mask_union</a>
|
||
</ul>
|
||
<li><a href="#Path">Path</a>
|
||
<ul>
|
||
<li><a href="#path_close">path_close</a>
|
||
<li><a href="#path_curveto">path_curveto</a>
|
||
<li><a href="#path_fill">path_fill</a>
|
||
<li><a href="#path_free">path_free</a>
|
||
<li><a href="#path_lineto">path_lineto</a>
|
||
<li><a href="#path_move">path_move</a>
|
||
<li><a href="#path_moveto">path_moveto</a>
|
||
<li><a href="#path_new">path_new</a>
|
||
<li><a href="#path_set_cap">path_set_cap</a>
|
||
<li><a href="#path_set_join">path_set_join</a>
|
||
<li><a href="#path_stroke">path_stroke</a>
|
||
</ul>
|
||
<li><a href="#Sprite">Sprite</a>
|
||
<ul>
|
||
<li><a href="#sprite_add_mask">sprite_add_mask</a>
|
||
<li><a href="#sprite_add_path">sprite_add_path</a>
|
||
<li><a href="#sprite_free">sprite_free</a>
|
||
<li><a href="#sprite_is_locked">sprite_is_locked</a>
|
||
<li><a href="#sprite_is_modified">sprite_is_modified</a>
|
||
<li><a href="#sprite_lock">sprite_lock</a>
|
||
<li><a href="#sprite_new">sprite_new</a>
|
||
<li><a href="#sprite_new_copy">sprite_new_copy</a>
|
||
<li><a href="#sprite_new_flatten_copy">sprite_new_flatten_copy</a>
|
||
<li><a href="#sprite_new_with_layer">sprite_new_with_layer</a>
|
||
<li><a href="#sprite_remove_mask">sprite_remove_mask</a>
|
||
<li><a href="#sprite_remove_path">sprite_remove_path</a>
|
||
<li><a href="#sprite_render">sprite_render</a>
|
||
<li><a href="#sprite_request_mask">sprite_request_mask</a>
|
||
<li><a href="#sprite_set_filename">sprite_set_filename</a>
|
||
<li><a href="#sprite_set_frames">sprite_set_frames</a>
|
||
<li><a href="#sprite_set_frpos">sprite_set_frpos</a>
|
||
<li><a href="#sprite_set_imgtype">sprite_set_imgtype</a>
|
||
<li><a href="#sprite_set_layer">sprite_set_layer</a>
|
||
<li><a href="#sprite_set_mask">sprite_set_mask</a>
|
||
<li><a href="#sprite_set_path">sprite_set_path</a>
|
||
<li><a href="#sprite_set_size">sprite_set_size</a>
|
||
<li><a href="#sprite_set_speed">sprite_set_speed</a>
|
||
<li><a href="#sprite_unlock">sprite_unlock</a>
|
||
<li><a href="#sprite_was_saved">sprite_was_saved</a>
|
||
</ul>
|
||
<li><a href="#Stock">Stock</a>
|
||
<ul>
|
||
<li><a href="#stock_add_image">stock_add_image</a>
|
||
<li><a href="#stock_free">stock_free</a>
|
||
<li><a href="#stock_get_image">stock_get_image</a>
|
||
<li><a href="#stock_new">stock_new</a>
|
||
<li><a href="#stock_new_copy">stock_new_copy</a>
|
||
<li><a href="#stock_remove_image">stock_remove_image</a>
|
||
<li><a href="#stock_replace_image">stock_replace_image</a>
|
||
</ul>
|
||
<li><a href="#Undo">Undo</a>
|
||
<ul>
|
||
<li><a href="#undo_add_frame">undo_add_frame</a>
|
||
<li><a href="#undo_add_image">undo_add_image</a>
|
||
<li><a href="#undo_add_layer">undo_add_layer</a>
|
||
<li><a href="#undo_can_redo">undo_can_redo</a>
|
||
<li><a href="#undo_can_undo">undo_can_undo</a>
|
||
<li><a href="#undo_close">undo_close</a>
|
||
<li><a href="#undo_disable">undo_disable</a>
|
||
<li><a href="#undo_enable">undo_enable</a>
|
||
<li><a href="#undo_flip">undo_flip</a>
|
||
<li><a href="#undo_free">undo_free</a>
|
||
<li><a href="#undo_image">undo_image</a>
|
||
<li><a href="#undo_is_disabled">undo_is_disabled</a>
|
||
<li><a href="#undo_is_enabled">undo_is_enabled</a>
|
||
<li><a href="#undo_move_layer">undo_move_layer</a>
|
||
<li><a href="#undo_new">undo_new</a>
|
||
<li><a href="#undo_open">undo_open</a>
|
||
<li><a href="#undo_redo">undo_redo</a>
|
||
<li><a href="#undo_remove_frame">undo_remove_frame</a>
|
||
<li><a href="#undo_remove_image">undo_remove_image</a>
|
||
<li><a href="#undo_remove_layer">undo_remove_layer</a>
|
||
<li><a href="#undo_replace_image">undo_replace_image</a>
|
||
<li><a href="#undo_set_layer">undo_set_layer</a>
|
||
<li><a href="#undo_set_mask">undo_set_mask</a>
|
||
<li><a href="#undo_undo">undo_undo</a>
|
||
</ul>
|
||
<li><a href="#Effect">Effect</a>
|
||
<ul>
|
||
<li><a href="#effect_apply">effect_apply</a>
|
||
<li><a href="#effect_apply_step">effect_apply_step</a>
|
||
<li><a href="#effect_apply_to_image">effect_apply_to_image</a>
|
||
<li><a href="#effect_apply_to_target">effect_apply_to_target</a>
|
||
<li><a href="#effect_begin">effect_begin</a>
|
||
<li><a href="#effect_begin_for_preview">effect_begin_for_preview</a>
|
||
<li><a href="#effect_flush">effect_flush</a>
|
||
<li><a href="#effect_free">effect_free</a>
|
||
<li><a href="#effect_load_target">effect_load_target</a>
|
||
<li><a href="#effect_new">effect_new</a>
|
||
<li><a href="#effect_set_target">effect_set_target</a>
|
||
<li><a href="#effect_set_target_grayscale">effect_set_target_grayscale</a>
|
||
<li><a href="#effect_set_target_indexed">effect_set_target_indexed</a>
|
||
<li><a href="#effect_set_target_rgb">effect_set_target_rgb</a>
|
||
</ul>
|
||
<li><a href="#ConvMatr">ConvMatr</a>
|
||
<ul>
|
||
<li><a href="#convmatr_free">convmatr_free</a>
|
||
<li><a href="#convmatr_new">convmatr_new</a>
|
||
<li><a href="#convmatr_new_string">convmatr_new_string</a>
|
||
<li><a href="#get_convmatr">get_convmatr</a>
|
||
<li><a href="#get_convmatr_by_name">get_convmatr_by_name</a>
|
||
<li><a href="#set_convmatr">set_convmatr</a>
|
||
</ul>
|
||
<li><a href="#Curve">Curve</a>
|
||
<ul>
|
||
<li><a href="#curve_add_point">curve_add_point</a>
|
||
<li><a href="#curve_free">curve_free</a>
|
||
<li><a href="#curve_new">curve_new</a>
|
||
<li><a href="#curve_remove_point">curve_remove_point</a>
|
||
<li><a href="#set_color_curve">set_color_curve</a>
|
||
</ul>
|
||
<li><a href="#CurvePoint">CurvePoint</a>
|
||
<ul>
|
||
<li><a href="#curve_point_free">curve_point_free</a>
|
||
<li><a href="#curve_point_new">curve_point_new</a>
|
||
</ul>
|
||
<li><a href="#JEvent">JEvent</a>
|
||
<li><a href="#JList">JList</a>
|
||
<li><a href="#JRect">JRect</a>
|
||
<li><a href="#JRegion">JRegion</a>
|
||
<li><a href="#JWidget">JWidget</a>
|
||
<li><a href="#Index">Index</a>
|
||
</ul>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Introduction">Introduction</a></h1>
|
||
|
||
<p>
|
||
ASE has scripting facilities. You can make a script (a text file)
|
||
with a set of routines to make images, effects, or anything you
|
||
think. ASE uses Lua library to do this, so you should know program
|
||
in Lua, anyway, it's really simple, so you'll not have any
|
||
inconvenient.
|
||
|
||
<p>
|
||
The complete reference of Lua language is in <a href="lua-5.0.pdf">lua-5.0.pdf</a>. Also, you
|
||
need a text editor to write Lua scripts (the Windows Notepad can
|
||
be used).
|
||
|
||
<p>
|
||
<br><center><h2><a name="Warning about Lua">Warning about Lua</a></h2></center><p>
|
||
|
||
<p>
|
||
You should known that ASE uses a patched version of Lua, where you
|
||
can use the != operator instead of ~=
|
||
<blockquote class="code"><pre>
|
||
if current_sprite != nil then
|
||
-- we can use the current_sprite variable...
|
||
end
|
||
</pre></blockquote>
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Basic Lua Programming">Basic Lua Programming</a></h1>
|
||
|
||
<p>
|
||
<br><center><h2><a name="Comments">Comments</a></h2></center><p>
|
||
|
||
<p>
|
||
Comments start with --
|
||
<blockquote class="code"><pre>
|
||
-- this line will be never parsed
|
||
</pre></blockquote>
|
||
Or you can comment multiple lines
|
||
<blockquote class="code"><pre>
|
||
--[[
|
||
blah blah blah...
|
||
]]--
|
||
</pre></blockquote>
|
||
<br><center><h2><a name="Example 1">Example 1</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
local a = 4
|
||
local b = 5
|
||
print ("a+b is: " .. (a+b))
|
||
</pre></blockquote>
|
||
|
||
<p>
|
||
Here we define two variables "a" and "b" with the values "4" and "5"
|
||
respectively. Then we print the string "a+b is: " follower by the
|
||
result of the operation a+b (4+5) that is 9, so the final message is:
|
||
<blockquote class="text"><pre>
|
||
a+b is: 9
|
||
</pre></blockquote>
|
||
Also we could use:
|
||
<blockquote class="code"><pre>
|
||
print (a.."+"..b.." is: "..(a+b))
|
||
</pre></blockquote>
|
||
To print:
|
||
<blockquote class="text"><pre>
|
||
4+5 is: 9
|
||
</pre></blockquote>
|
||
<br><center><h2><a name="Example 2">Example 2</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
function add (a, b)
|
||
return a+b
|
||
end
|
||
print ("1+2 = " .. add (1, 2))
|
||
</pre></blockquote>
|
||
With the "function" keyword you define a new function, in this case
|
||
the "add" function, the names between parenthesis indicate the
|
||
arguments (parameters) that you must give to that routine.
|
||
|
||
<p>
|
||
<br><center><h2><a name="Example 3">Example 3</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
for c = 1, 10 do
|
||
print (c)
|
||
end
|
||
</pre></blockquote>
|
||
This repeat the block between the "do" keyword and the "end" keyword
|
||
10 times (from 1 to 10 inclusive).
|
||
|
||
<p>
|
||
So this print:
|
||
<blockquote class="text"><pre>
|
||
1
|
||
2
|
||
3
|
||
4
|
||
5
|
||
6
|
||
7
|
||
8
|
||
9
|
||
10
|
||
</pre></blockquote>
|
||
<br><center><h2><a name="Example 4">Example 4</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
for c = 1, 10 do
|
||
if c == 5 then
|
||
break
|
||
end
|
||
print (c)
|
||
end
|
||
</pre></blockquote>
|
||
In this case when "c" come to 5 the for is breaked so the other
|
||
iterations aren't made. This print:
|
||
<blockquote class="text"><pre>
|
||
1
|
||
2
|
||
3
|
||
4
|
||
</pre></blockquote>
|
||
<br><center><h2><a name="Example 5">Example 5</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
for c = 1, 5 do
|
||
if c != 3 then
|
||
print ("c isn't 3 (c is " .. c .. ")")
|
||
else
|
||
print ("c is 3")
|
||
end
|
||
end
|
||
</pre></blockquote>
|
||
The != operator means "not equal" (negation of equality). You can
|
||
use the original Lua operator ~= too.
|
||
|
||
<p>
|
||
This print:
|
||
<blockquote class="text"><pre>
|
||
c isn't 3 (c is 1)
|
||
c isn't 3 (c is 2)
|
||
c is 3
|
||
c isn't 3 (c is 4)
|
||
c isn't 3 (c is 5)
|
||
</pre></blockquote>
|
||
<br><center><h2><a name="Example 6">Example 6</a></h2></center><p>
|
||
<blockquote class="code"><pre>
|
||
local done = false
|
||
local a = 1
|
||
while not done do
|
||
print (a)
|
||
if a == 3 then
|
||
done = true
|
||
end
|
||
a = a + 1
|
||
end
|
||
</pre></blockquote>
|
||
This print:
|
||
<blockquote class="text"><pre>
|
||
1
|
||
2
|
||
3
|
||
</pre></blockquote>
|
||
And can be implemented in this way too:
|
||
<blockquote class="code"><pre>
|
||
local a = 1
|
||
while a <= 3 do
|
||
print (a)
|
||
a = a + 1
|
||
end
|
||
</pre></blockquote>
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="ImgType">ImgType</a></h1>
|
||
|
||
<p>
|
||
The imgtype (image-type) is the format of each pixel in a image.
|
||
Sprites have a lot of images, but all images must have the same
|
||
imgtype. The know imgtypes are: RGB, Grayscale, Indexed, Bitmap.
|
||
|
||
<p>
|
||
<br><center><h2><a name="IMAGE_RGB">IMAGE_RGB</a></h2></center><p>
|
||
|
||
<p>
|
||
Means that the image have four components (channels or bytes) per
|
||
pixel, where the values of these components can be between 0 and 255
|
||
(256 differents tones), where 255 the maximum intensity.
|
||
|
||
<p>
|
||
RGB is RGBA really:
|
||
<ul><li>
|
||
R: Red.
|
||
<li>
|
||
G: Green.
|
||
<li>
|
||
B: Blue.
|
||
<li>
|
||
A: Alpha (transparency or opacity).
|
||
</ul>
|
||
(0,0,0,0) is mask color, (0,0,0,255) is black, and (255,255,255,255)
|
||
is white.
|
||
|
||
<p>
|
||
<br><center><h2><a name="IMAGE_GRAYSCALE">IMAGE_GRAYSCALE</a></h2></center><p>
|
||
|
||
<p>
|
||
The image has two channels (two bytes) per pixel.
|
||
<ul><li>
|
||
K: Luminance (or black channel)
|
||
<li>
|
||
A: Alpha (transparency or opacity).
|
||
</ul>
|
||
(0,0) is mask color, (0,255) is black, (255,255) is white.
|
||
|
||
<p>
|
||
<br><center><h2><a name="IMAGE_INDEXED">IMAGE_INDEXED</a></h2></center><p>
|
||
|
||
<p>
|
||
Image uses one byte per pixel:
|
||
<ul><li>
|
||
Index: index of the color that we must use from the color-palette.
|
||
</ul>
|
||
|
||
<p>
|
||
In this imgtype, each pixel hasn't the color information, only has a
|
||
reference to the color-palette (from 0 to 255, 256 colors), so the
|
||
RGB information about the color is found in the color-palette and
|
||
not in the image.
|
||
|
||
<p>
|
||
The index=0 is the mask color.
|
||
|
||
<p>
|
||
<br><center><h2><a name="IMAGE_BITMAP">IMAGE_BITMAP</a></h2></center><p>
|
||
|
||
<p>
|
||
An internal imgtype to handle masks, where a pixel is a bit, and 8
|
||
pixels are a byte. 1 means selected, 0 deselected.
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Standard routines">Standard routines</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="MAX">MAX</a> (double x, double y);</b></div><br>
|
||
Returns the maximum value.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="MIN">MIN</a> (double x, double y);</b></div><br>
|
||
Returns the minimum value.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="MID">MID</a> (double x, double y, double z);</b></div><br>
|
||
Limits the y value to x and z.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="include">include</a> (const char *filename);</b></div><br>
|
||
<div class="al-api-cont"><b>void <a name="dofile">dofile</a> (const char *filename);</b></div><br>
|
||
Process the script that is in the file with the given filename. It's
|
||
searched in the current and in the "data/scripts" directories.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="print">print</a> (const char *buf);</b></div><br>
|
||
Prints a message in the console, this is useful mainly to debug
|
||
scripts or to show errors.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="rand">rand</a> (double min, double max);</b></div><br>
|
||
Returns a random number between min and max values.
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="String routines">String routines</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>const char *<a name="_">_</a> (const char *msgid);</b></div><br>
|
||
Tries to translate the string msgid to the current language, the
|
||
entry must exists in the .po file.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>int <a name="strcmp">strcmp</a> (const char *s1, const char *s2);</b></div><br>
|
||
Compares the two strings s1 and s2. It returns an integer less than,
|
||
equal to, or greater than zero if s1 is found, respectively, to be
|
||
less than, to match, or be greater than s2.
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Math routines">Math routines</a></h1>
|
||
|
||
<p>
|
||
<br><center><h2><a name="Constants">Constants</a></h2></center><p>
|
||
|
||
<p>
|
||
PI: the ratio of a circle's circumference to its diameter (3.141592...).
|
||
|
||
<p>
|
||
<br><center><h2><a name="Routines">Routines</a></h2></center><p>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="fabs">fabs</a> (double x);</b></div><br>
|
||
Return the absolute value of the number x.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="ceil">ceil</a> (double x);</b></div><br>
|
||
This funtion rounds x up to the nearest integer.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#floor">floor</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="floor">floor</a> (double x);</b></div><br>
|
||
This funtion rounds x down to the nearest integer.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#ceil">ceil</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="exp">exp</a> (double x);</b></div><br>
|
||
Returns the value of e (the base of natural logarithms) raised to
|
||
the power of x.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#log">log</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="log">log</a> (double x);</b></div><br>
|
||
Returns the natural logarithm of x.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#exp">exp</a>,
|
||
<a class="xref" href="#log10">log10</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="log10">log10</a> (double x);</b></div><br>
|
||
Returns the base-10 logarithm of x.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#log">log</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="pow">pow</a> (double x, double y);</b></div><br>
|
||
Returns the value of x raised to the power of y.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#sqrt">sqrt</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="sqrt">sqrt</a> (double x);</b></div><br>
|
||
Returns the non-negative square root of x.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#hypot">hypot</a>,
|
||
<a class="xref" href="#pow">pow</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="hypot">hypot</a> (double x, double y);</b></div><br>
|
||
Returns the sqrt(x*x + y*y). This is the length of the hypotenuse
|
||
of a right-angle triangle with sides of length x and y, or the
|
||
distance of the point (x, y) from the origin.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#sqrt">sqrt</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="cos">cos</a> (double x);</b></div><br>
|
||
Returns the cosine of x, where x is given in radians.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#sin">sin</a>,
|
||
<a class="xref" href="#tan">tan</a>,
|
||
<a class="xref" href="#acos">acos</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="sin">sin</a> (double x);</b></div><br>
|
||
Returns the sine of x, where x is given in radians.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#cos">cos</a>,
|
||
<a class="xref" href="#tan">tan</a>,
|
||
<a class="xref" href="#asin">asin</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="tan">tan</a> (double x);</b></div><br>
|
||
Returns the tangent of x, where x is given in radians.
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#cos">cos</a>,
|
||
<a class="xref" href="#sin">sin</a>,
|
||
<a class="xref" href="#atan">atan</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="acos">acos</a> (double x);</b></div><br>
|
||
Returns the arc cosine in radians and the value is mathematically
|
||
defined to be between 0 and PI (inclusive).
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#cos">cos</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="asin">asin</a> (double x);</b></div><br>
|
||
Returns the arc sine in radians and the value is mathematically
|
||
defined to be between -PI/2 and PI/2 (inclusive).
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#sin">sin</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="atan">atan</a> (double x);</b></div><br>
|
||
Returns the arc tangent in radians and the value is mathematically
|
||
defined to be between -PI/2 and PI/2 (inclusive).
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#tan">tan</a>,
|
||
<a class="xref" href="#atan2">atan2</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="atan2">atan2</a> (double y, double x);</b></div><br>
|
||
Returns the result in radians, which is between -PI and PI
|
||
(inclusive).
|
||
|
||
|
||
<blockquote class="xref"><em><b>See also:</b></em>
|
||
<a class="xref" href="#atan">atan</a>.</blockquote>
|
||
<div class="al-api"><b>double <a name="cosh">cosh</a> (double x);</b></div><br>
|
||
Returns the hyperbolic cosine of x, which is defined mathematically
|
||
as (exp(x) + exp(-x)) / 2.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="sinh">sinh</a> (double x);</b></div><br>
|
||
Returns the hyperbolic sine of x, which is defined mathematically as
|
||
(exp(x) - exp(-x)) / 2.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>double <a name="tanh">tanh</a> (double x);</b></div><br>
|
||
Returns the hyperbolic tangent of x, which is defined mathematically
|
||
as sinh(x) / cosh(x).
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="File routines">File routines</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="file_exists">file_exists</a> (const char *filename);</b></div><br>
|
||
Checks whether a file matching the given name exists, returning true
|
||
if it does.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>char *<a name="get_filename">get_filename</a> (const char *filename);</b></div><br>
|
||
When passed a completely specified file path, this returns a pointer
|
||
to the filename portion. Both <20>\<5C> and <20>/<2F> are recognized as directory
|
||
separators.
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Objects">Objects</a></h1>
|
||
|
||
<p>
|
||
There are a special type of variables in Lua scripts: objects
|
||
(represented with user-data). Each object can be of some of these
|
||
types:
|
||
<ul><li>
|
||
Graphics objects: Image, Frame, Layer, Mask, Path, Sprite, Stock, Undo.
|
||
<li>
|
||
Effect objects: Effect, ConvMatr, Curve, CurvePoint.
|
||
<li>
|
||
GUI objects: JEvent, JList, JRect, JRegion, JWidget.
|
||
</ul>
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Image">Image</a></h1>
|
||
|
||
<p>
|
||
An image, has width and height, an image-type (RGB, Grayscale, etc.),
|
||
and contains the image data (pixels, pixmap, or bitmap).
|
||
|
||
<p>
|
||
<br><center><h2><a name="Image fields">Image fields</a></h2></center><p>
|
||
<ul><li>
|
||
[number] image.imgtype<br>
|
||
See sprite.imgtype
|
||
<li>
|
||
[number] image.w<br>
|
||
[number] image.h<br>
|
||
The width and height (in pixels) of this image.
|
||
</ul>
|
||
<br><center><h2><a name="Image methods">Image methods</a></h2></center><p>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Image *<a name="image_new">image_new</a> (int imgtype, int w, int h);</b></div><br>
|
||
Creates a new image
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Image *<a name="image_new_copy">image_new_copy</a> (Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_free">image_free</a> (Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>int <a name="image_getpixel">image_getpixel</a> (Image *image, int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_putpixel">image_putpixel</a> (Image *image, int x, int y, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_clear">image_clear</a> (Image *image, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_copy">image_copy</a> (Image *dst, Image *src, int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_merge">image_merge</a> (Image *dst, Image *src, int x, int y, int opacity, int blend_mode);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Image *<a name="image_crop">image_crop</a> (Image *image, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_hline">image_hline</a> (Image *image, int x1, int y, int x2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_vline">image_vline</a> (Image *image, int x, int y1, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_rect">image_rect</a> (Image *image, int x1, int y1, int x2, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_rectfill">image_rectfill</a> (Image *image, int x1, int y1, int x2, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_line">image_line</a> (Image *image, int x1, int y1, int x2, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_ellipse">image_ellipse</a> (Image *image, int x1, int y1, int x2, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_ellipsefill">image_ellipsefill</a> (Image *image, int x1, int y1, int x2, int y2, int color);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="image_convert">image_convert</a> (Image *dst, Image *src);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>int <a name="image_count_diff">image_count_diff</a> (Image *i1, Image *i2);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Frame">Frame</a></h1>
|
||
|
||
<p>
|
||
A frame of animation, it contains the position, opacity and a reference
|
||
(by index) to some image in the image's stock of the layer where this
|
||
frame is. Remember this, a frame doesn't contain the image, only a
|
||
reference to it.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Frame *<a name="frame_new">frame_new</a> (int frpos, int image, int x, int y, int opacity);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Frame *<a name="frame_new_copy">frame_new_copy</a> (Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="frame_free">frame_free</a> (Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Frame *<a name="frame_is_link">frame_is_link</a> (Frame *frame, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="frame_set_frpos">frame_set_frpos</a> (Frame *frame, int frpos);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="frame_set_image">frame_set_image</a> (Frame *frame, int image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="frame_set_position">frame_set_position</a> (Frame *frame, int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="frame_set_opacity">frame_set_opacity</a> (Frame *frame, int opacity);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Layer">Layer</a></h1>
|
||
|
||
<p>
|
||
A layer can be two things: a normal layer (also called image layer),
|
||
or a layer set. A layer set is a group of child layers (like
|
||
"sprite.set"). A normal layer is a complete different thing.
|
||
|
||
<p>
|
||
A normal layer has a stock of images and a list of frames, each
|
||
frame has a reference to the image's stock, so each frame uses some
|
||
image of the stock. If two frames uses the same stock images, the
|
||
first frame is called the "original frame" and all other frames are
|
||
called "links".
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_new">layer_new</a> (int imgtype);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_set_new">layer_set_new</a> (void);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_new_copy">layer_new_copy</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_new_with_image">layer_new_with_image</a> (int imgtype, int x, int y, int w, int h,
|
||
int frpos);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_free">layer_free</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="layer_is_image">layer_is_image</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="layer_is_set">layer_is_set</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_get_prev">layer_get_prev</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_get_next">layer_get_next</a> (Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_set_name">layer_set_name</a> (Layer *layer, const char *name);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_set_blend_mode">layer_set_blend_mode</a> (Layer *layer, int blend_mode);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_add_frame">layer_add_frame</a> (Layer *layer, Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_remove_frame">layer_remove_frame</a> (Layer *layer, Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Frame *<a name="layer_get_frame">layer_get_frame</a> (Layer *layer, int frpos);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_add_layer">layer_add_layer</a> (Layer *set, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_remove_layer">layer_remove_layer</a> (Layer *set, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_move_layer">layer_move_layer</a> (Layer *set, Layer *layer, Layer *after);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="layer_render">layer_render</a> (Layer *layer, Image *image, int x, int y, int frpos);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Layer *<a name="layer_flatten">layer_flatten</a> (Layer *layer, int imgtype, int x, int y, int w, int h,
|
||
int frmin, int frmax);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Mask">Mask</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Mask *<a name="mask_new">mask_new</a> (void);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Mask *<a name="mask_new_copy">mask_new_copy</a> (Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_free">mask_free</a> (Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="mask_is_empty">mask_is_empty</a> (Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_set_name">mask_set_name</a> (Mask *mask, const char *name);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_move">mask_move</a> (Mask *mask, int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_none">mask_none</a> (Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_invert">mask_invert</a> (Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_replace">mask_replace</a> (Mask *mask, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_union">mask_union</a> (Mask *mask, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_subtract">mask_subtract</a> (Mask *mask, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_intersect">mask_intersect</a> (Mask *mask, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_merge">mask_merge</a> (Mask *dst, Mask *src);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_by_color">mask_by_color</a> (Mask *mask, Image *image, int color, int fuzziness);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="mask_crop">mask_crop</a> (Mask *mask, Image *image);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Path">Path</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Path *<a name="path_new">path_new</a> (const char *name);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_free">path_free</a> (Path *path);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_set_join">path_set_join</a> (Path *path, int join);</b></div><br>
|
||
<ul><li>
|
||
PATH_JOIN_MITER<br>
|
||
<li>
|
||
PATH_JOIN_ROUND<br>
|
||
<li>
|
||
PATH_JOIN_BEVEL<br>
|
||
</ul>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_set_cap">path_set_cap</a> (Path *path, int cap);</b></div><br>
|
||
<ul><li>
|
||
PATH_CAP_BUTT<br>
|
||
<li>
|
||
PATH_CAP_ROUND<br>
|
||
<li>
|
||
PATH_CAP_SQUARE<br>
|
||
</ul>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_moveto">path_moveto</a> (Path *path, double x, double y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_lineto">path_lineto</a> (Path *path, double x, double y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_curveto">path_curveto</a> (Path *path, double control_x1, double control_y1, double control_x2, double control_y2, double end_x, double end_y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_close">path_close</a> (Path *path);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_move">path_move</a> (Path *path, double x, double y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_stroke">path_stroke</a> (Path *path, Image *image, int color, double brush_size);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="path_fill">path_fill</a> (Path *path, Image *image, int color);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Sprite">Sprite</a></h1>
|
||
|
||
<p>
|
||
The sprite is the main object of ASE (remember Allegro "Sprite"
|
||
Editor), and it's the structure that contains all data: layers,
|
||
frames, stocks, images, masks, paths, and undo information are
|
||
inside the same sprite.
|
||
|
||
<p>
|
||
There are a global variable of Sprite type: current_sprite. This
|
||
could be "nil" if there aren't a selected sprite in the moment.
|
||
|
||
<p>
|
||
You should known about the difference between the "current_sprite"
|
||
in scripts and the sprite in the current editor. Because when you
|
||
select a sprite with "set_current_sprite", only the "current_sprite"
|
||
global pointer is set, but the sprite in the current editor is
|
||
maintain intact. So when ASE runs a script, the "current_sprite"
|
||
will be pointing to the sprite in the current editor, but if you
|
||
change the "current_sprite" (with "set_current_sprite" routine)
|
||
you'll not get that sprite in the editor (use "sprite_show" function
|
||
instead).
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Sprite *<a name="sprite_new">sprite_new</a> (int imgtype, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Sprite *<a name="sprite_new_copy">sprite_new_copy</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Sprite *<a name="sprite_new_flatten_copy">sprite_new_flatten_copy</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Sprite *<a name="sprite_new_with_layer">sprite_new_with_layer</a> (int imgtype, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_free">sprite_free</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_lock">sprite_lock</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_unlock">sprite_unlock</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="sprite_is_locked">sprite_is_locked</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="sprite_is_modified">sprite_is_modified</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_was_saved">sprite_was_saved</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_filename">sprite_set_filename</a> (Sprite *sprite, const char *filename);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_size">sprite_set_size</a> (Sprite *sprite, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_frames">sprite_set_frames</a> (Sprite *sprite, int frames);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_speed">sprite_set_speed</a> (Sprite *sprite, int speed);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_path">sprite_set_path</a> (Sprite *sprite, Path *path);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_mask">sprite_set_mask</a> (Sprite *sprite, Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_layer">sprite_set_layer</a> (Sprite *sprite, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_frpos">sprite_set_frpos</a> (Sprite *sprite, int frpos);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_set_imgtype">sprite_set_imgtype</a> (Sprite *sprite, int imgtype, int dithering_method);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_add_path">sprite_add_path</a> (Sprite *sprite, Path *path);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_remove_path">sprite_remove_path</a> (Sprite *sprite, Path *path);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_add_mask">sprite_add_mask</a> (Sprite *sprite, Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_remove_mask">sprite_remove_mask</a> (Sprite *sprite, Mask *mask);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Mask *<a name="sprite_request_mask">sprite_request_mask</a> (Sprite *sprite, const char *name);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="sprite_render">sprite_render</a> (Sprite *sprite, Image *image, int x, int y);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Stock">Stock</a></h1>
|
||
|
||
<p>
|
||
Stock of images. Each image layer has its own image's stock to
|
||
provide images to its frames.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Stock *<a name="stock_new">stock_new</a> (int imgtype);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Stock *<a name="stock_new_copy">stock_new_copy</a> (Stock *stock);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="stock_free">stock_free</a> (Stock *stock);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>int <a name="stock_add_image">stock_add_image</a> (Stock *stock, Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="stock_remove_image">stock_remove_image</a> (Stock *stock, Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="stock_replace_image">stock_replace_image</a> (Stock *stock, int index, Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Image *<a name="stock_get_image">stock_get_image</a> (Stock *stock, int index);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Undo">Undo</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Undo *<a name="undo_new">undo_new</a> (Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_free">undo_free</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_enable">undo_enable</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_disable">undo_disable</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="undo_is_enabled">undo_is_enabled</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="undo_is_disabled">undo_is_disabled</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="undo_can_undo">undo_can_undo</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>bool <a name="undo_can_redo">undo_can_redo</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_undo">undo_undo</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_redo">undo_redo</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_open">undo_open</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_close">undo_close</a> (Undo *undo);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_image">undo_image</a> (Undo *undo, Image *image, int x, int y, int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_flip">undo_flip</a> (Undo *undo, Image *image, int x1, int y1, int x2, int y2,
|
||
int horz);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_add_image">undo_add_image</a> (Undo *undo, Stock *stock, Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_remove_image">undo_remove_image</a> (Undo *undo, Stock *stock, Image *image);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_replace_image">undo_replace_image</a> (Undo *undo, Stock *stock, int index);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_add_frame">undo_add_frame</a> (Undo *undo, Layer *layer, Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_remove_frame">undo_remove_frame</a> (Undo *undo, Layer *layer, Frame *frame);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_add_layer">undo_add_layer</a> (Undo *undo, Layer *set, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_remove_layer">undo_remove_layer</a> (Undo *undo, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_move_layer">undo_move_layer</a> (Undo *undo, Layer *layer);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_set_layer">undo_set_layer</a> (Undo *undo, Sprite *sprite);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="undo_set_mask">undo_set_mask</a> (Undo *undo, Sprite *sprite);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Effect">Effect</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Effect *<a name="effect_new">effect_new</a> (Sprite *sprite, const char *name);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_free">effect_free</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_load_target">effect_load_target</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_set_target">effect_set_target</a> (Effect *effect, bool r, bool g, bool b, bool k, bool a, bool index);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_set_target_rgb">effect_set_target_rgb</a> (Effect *effect, bool r, bool g, bool b, bool a);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_set_target_grayscale">effect_set_target_grayscale</a> (Effect *effect, bool k, bool a);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_set_target_indexed">effect_set_target_indexed</a> (Effect *effect, bool r, bool g, bool b, bool index);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_begin">effect_begin</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_begin_for_preview">effect_begin_for_preview</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>int <a name="effect_apply_step">effect_apply_step</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_apply">effect_apply</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_flush">effect_flush</a> (Effect *effect);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_apply_to_image">effect_apply_to_image</a> (Effect *effect, Image *image, int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="effect_apply_to_target">effect_apply_to_target</a> (Effect *effect);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="ConvMatr">ConvMatr</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>ConvMatr *<a name="convmatr_new">convmatr_new</a> (int w, int h);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>ConvMatr *<a name="convmatr_new_string">convmatr_new_string</a> (const char *format);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="convmatr_free">convmatr_free</a> (ConvMatr *convmatr);</b></div><br>
|
||
|
||
<p>
|
||
<br><center><h2><a name="Convolution Matrix Effect">Convolution Matrix Effect</a></h2></center><p>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="set_convmatr">set_convmatr</a> (ConvMatr *convmatr);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>ConvMatr *<a name="get_convmatr">get_convmatr</a> (void);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>ConvMatr *<a name="get_convmatr_by_name">get_convmatr_by_name</a> (const char *name);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Curve">Curve</a></h1>
|
||
|
||
<p>
|
||
Curve is a type to represent a function y=f(x). It's mainly used in
|
||
color-curve effect.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>Curve *<a name="curve_new">curve_new</a> (int type);</b></div><br>
|
||
Creates a new curve, type can be CURVE_LINEAR or CURVE_SPLINE.
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="curve_free">curve_free</a> (Curve *curve);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="curve_add_point">curve_add_point</a> (Curve *curve, CurvePoint *point);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="curve_remove_point">curve_remove_point</a> (Curve *curve, CurvePoint *point);</b></div><br>
|
||
|
||
<p>
|
||
<br><center><h2><a name="Color Curve Effect">Color Curve Effect</a></h2></center><p>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="set_color_curve">set_color_curve</a> (Curve *curve);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="CurvePoint">CurvePoint</a></h1>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>CurvePoint *<a name="curve_point_new">curve_point_new</a> (int x, int y);</b></div><br>
|
||
|
||
<p><br>
|
||
<div class="al-api"><b>void <a name="curve_point_free">curve_point_free</a> (CurvePoint *point);</b></div><br>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="JEvent">JEvent</a></h1>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="JList">JList</a></h1>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="JRect">JRect</a></h1>
|
||
|
||
<p>
|
||
<br><center><h2><a name="JRect fields">JRect fields</a></h2></center><p>
|
||
<ul><li>
|
||
[number] rect.x<br>
|
||
[number] rect.y<br>
|
||
Position of the upper-left corner of the rectangle.
|
||
<li>
|
||
[number] rect.w<br>
|
||
[number] rect.h<br>
|
||
Size of the rectangle (width and height).
|
||
</ul>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="JRegion">JRegion</a></h1>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="JWidget">JWidget</a></h1>
|
||
|
||
|
||
|
||
<p><br>
|
||
<h1><a name="Index">Index</a></h1>
|
||
|
||
<p>
|
||
<li><a href="#MAX">MAX</a>
|
||
<li><a href="#MID">MID</a>
|
||
<li><a href="#MIN">MIN</a>
|
||
<li><a href="#_">_</a>
|
||
<li><a href="#acos">acos</a>
|
||
<li><a href="#asin">asin</a>
|
||
<li><a href="#atan">atan</a>
|
||
<li><a href="#atan2">atan2</a>
|
||
<li><a href="#ceil">ceil</a>
|
||
<li><a href="#convmatr_free">convmatr_free</a>
|
||
<li><a href="#convmatr_new">convmatr_new</a>
|
||
<li><a href="#convmatr_new_string">convmatr_new_string</a>
|
||
<li><a href="#cos">cos</a>
|
||
<li><a href="#cosh">cosh</a>
|
||
<li><a href="#curve_add_point">curve_add_point</a>
|
||
<li><a href="#curve_free">curve_free</a>
|
||
<li><a href="#curve_new">curve_new</a>
|
||
<li><a href="#curve_point_free">curve_point_free</a>
|
||
<li><a href="#curve_point_new">curve_point_new</a>
|
||
<li><a href="#curve_remove_point">curve_remove_point</a>
|
||
<li><a href="#dofile">dofile</a>
|
||
<li><a href="#effect_apply">effect_apply</a>
|
||
<li><a href="#effect_apply_step">effect_apply_step</a>
|
||
<li><a href="#effect_apply_to_image">effect_apply_to_image</a>
|
||
<li><a href="#effect_apply_to_target">effect_apply_to_target</a>
|
||
<li><a href="#effect_begin">effect_begin</a>
|
||
<li><a href="#effect_begin_for_preview">effect_begin_for_preview</a>
|
||
<li><a href="#effect_flush">effect_flush</a>
|
||
<li><a href="#effect_free">effect_free</a>
|
||
<li><a href="#effect_load_target">effect_load_target</a>
|
||
<li><a href="#effect_new">effect_new</a>
|
||
<li><a href="#effect_set_target">effect_set_target</a>
|
||
<li><a href="#effect_set_target_grayscale">effect_set_target_grayscale</a>
|
||
<li><a href="#effect_set_target_indexed">effect_set_target_indexed</a>
|
||
<li><a href="#effect_set_target_rgb">effect_set_target_rgb</a>
|
||
<li><a href="#exp">exp</a>
|
||
<li><a href="#fabs">fabs</a>
|
||
<li><a href="#file_exists">file_exists</a>
|
||
<li><a href="#floor">floor</a>
|
||
<li><a href="#frame_free">frame_free</a>
|
||
<li><a href="#frame_is_link">frame_is_link</a>
|
||
<li><a href="#frame_new">frame_new</a>
|
||
<li><a href="#frame_new_copy">frame_new_copy</a>
|
||
<li><a href="#frame_set_frpos">frame_set_frpos</a>
|
||
<li><a href="#frame_set_image">frame_set_image</a>
|
||
<li><a href="#frame_set_opacity">frame_set_opacity</a>
|
||
<li><a href="#frame_set_position">frame_set_position</a>
|
||
<li><a href="#get_convmatr">get_convmatr</a>
|
||
<li><a href="#get_convmatr_by_name">get_convmatr_by_name</a>
|
||
<li><a href="#get_filename">get_filename</a>
|
||
<li><a href="#hypot">hypot</a>
|
||
<li><a href="#image_clear">image_clear</a>
|
||
<li><a href="#image_convert">image_convert</a>
|
||
<li><a href="#image_copy">image_copy</a>
|
||
<li><a href="#image_count_diff">image_count_diff</a>
|
||
<li><a href="#image_crop">image_crop</a>
|
||
<li><a href="#image_ellipse">image_ellipse</a>
|
||
<li><a href="#image_ellipsefill">image_ellipsefill</a>
|
||
<li><a href="#image_free">image_free</a>
|
||
<li><a href="#image_getpixel">image_getpixel</a>
|
||
<li><a href="#image_hline">image_hline</a>
|
||
<li><a href="#image_line">image_line</a>
|
||
<li><a href="#image_merge">image_merge</a>
|
||
<li><a href="#image_new">image_new</a>
|
||
<li><a href="#image_new_copy">image_new_copy</a>
|
||
<li><a href="#image_putpixel">image_putpixel</a>
|
||
<li><a href="#image_rect">image_rect</a>
|
||
<li><a href="#image_rectfill">image_rectfill</a>
|
||
<li><a href="#image_vline">image_vline</a>
|
||
<li><a href="#include">include</a>
|
||
<li><a href="#layer_add_frame">layer_add_frame</a>
|
||
<li><a href="#layer_add_layer">layer_add_layer</a>
|
||
<li><a href="#layer_flatten">layer_flatten</a>
|
||
<li><a href="#layer_free">layer_free</a>
|
||
<li><a href="#layer_get_frame">layer_get_frame</a>
|
||
<li><a href="#layer_get_next">layer_get_next</a>
|
||
<li><a href="#layer_get_prev">layer_get_prev</a>
|
||
<li><a href="#layer_is_image">layer_is_image</a>
|
||
<li><a href="#layer_is_set">layer_is_set</a>
|
||
<li><a href="#layer_move_layer">layer_move_layer</a>
|
||
<li><a href="#layer_new">layer_new</a>
|
||
<li><a href="#layer_new_copy">layer_new_copy</a>
|
||
<li><a href="#layer_new_with_image">layer_new_with_image</a>
|
||
<li><a href="#layer_remove_frame">layer_remove_frame</a>
|
||
<li><a href="#layer_remove_layer">layer_remove_layer</a>
|
||
<li><a href="#layer_render">layer_render</a>
|
||
<li><a href="#layer_set_blend_mode">layer_set_blend_mode</a>
|
||
<li><a href="#layer_set_name">layer_set_name</a>
|
||
<li><a href="#layer_set_new">layer_set_new</a>
|
||
<li><a href="#log">log</a>
|
||
<li><a href="#log10">log10</a>
|
||
<li><a href="#mask_by_color">mask_by_color</a>
|
||
<li><a href="#mask_crop">mask_crop</a>
|
||
<li><a href="#mask_free">mask_free</a>
|
||
<li><a href="#mask_intersect">mask_intersect</a>
|
||
<li><a href="#mask_invert">mask_invert</a>
|
||
<li><a href="#mask_is_empty">mask_is_empty</a>
|
||
<li><a href="#mask_merge">mask_merge</a>
|
||
<li><a href="#mask_move">mask_move</a>
|
||
<li><a href="#mask_new">mask_new</a>
|
||
<li><a href="#mask_new_copy">mask_new_copy</a>
|
||
<li><a href="#mask_none">mask_none</a>
|
||
<li><a href="#mask_replace">mask_replace</a>
|
||
<li><a href="#mask_set_name">mask_set_name</a>
|
||
<li><a href="#mask_subtract">mask_subtract</a>
|
||
<li><a href="#mask_union">mask_union</a>
|
||
<li><a href="#path_close">path_close</a>
|
||
<li><a href="#path_curveto">path_curveto</a>
|
||
<li><a href="#path_fill">path_fill</a>
|
||
<li><a href="#path_free">path_free</a>
|
||
<li><a href="#path_lineto">path_lineto</a>
|
||
<li><a href="#path_move">path_move</a>
|
||
<li><a href="#path_moveto">path_moveto</a>
|
||
<li><a href="#path_new">path_new</a>
|
||
<li><a href="#path_set_cap">path_set_cap</a>
|
||
<li><a href="#path_set_join">path_set_join</a>
|
||
<li><a href="#path_stroke">path_stroke</a>
|
||
<li><a href="#pow">pow</a>
|
||
<li><a href="#print">print</a>
|
||
<li><a href="#rand">rand</a>
|
||
<li><a href="#set_color_curve">set_color_curve</a>
|
||
<li><a href="#set_convmatr">set_convmatr</a>
|
||
<li><a href="#sin">sin</a>
|
||
<li><a href="#sinh">sinh</a>
|
||
<li><a href="#sprite_add_mask">sprite_add_mask</a>
|
||
<li><a href="#sprite_add_path">sprite_add_path</a>
|
||
<li><a href="#sprite_free">sprite_free</a>
|
||
<li><a href="#sprite_is_locked">sprite_is_locked</a>
|
||
<li><a href="#sprite_is_modified">sprite_is_modified</a>
|
||
<li><a href="#sprite_lock">sprite_lock</a>
|
||
<li><a href="#sprite_new">sprite_new</a>
|
||
<li><a href="#sprite_new_copy">sprite_new_copy</a>
|
||
<li><a href="#sprite_new_flatten_copy">sprite_new_flatten_copy</a>
|
||
<li><a href="#sprite_new_with_layer">sprite_new_with_layer</a>
|
||
<li><a href="#sprite_remove_mask">sprite_remove_mask</a>
|
||
<li><a href="#sprite_remove_path">sprite_remove_path</a>
|
||
<li><a href="#sprite_render">sprite_render</a>
|
||
<li><a href="#sprite_request_mask">sprite_request_mask</a>
|
||
<li><a href="#sprite_set_filename">sprite_set_filename</a>
|
||
<li><a href="#sprite_set_frames">sprite_set_frames</a>
|
||
<li><a href="#sprite_set_frpos">sprite_set_frpos</a>
|
||
<li><a href="#sprite_set_imgtype">sprite_set_imgtype</a>
|
||
<li><a href="#sprite_set_layer">sprite_set_layer</a>
|
||
<li><a href="#sprite_set_mask">sprite_set_mask</a>
|
||
<li><a href="#sprite_set_path">sprite_set_path</a>
|
||
<li><a href="#sprite_set_size">sprite_set_size</a>
|
||
<li><a href="#sprite_set_speed">sprite_set_speed</a>
|
||
<li><a href="#sprite_unlock">sprite_unlock</a>
|
||
<li><a href="#sprite_was_saved">sprite_was_saved</a>
|
||
<li><a href="#sqrt">sqrt</a>
|
||
<li><a href="#stock_add_image">stock_add_image</a>
|
||
<li><a href="#stock_free">stock_free</a>
|
||
<li><a href="#stock_get_image">stock_get_image</a>
|
||
<li><a href="#stock_new">stock_new</a>
|
||
<li><a href="#stock_new_copy">stock_new_copy</a>
|
||
<li><a href="#stock_remove_image">stock_remove_image</a>
|
||
<li><a href="#stock_replace_image">stock_replace_image</a>
|
||
<li><a href="#strcmp">strcmp</a>
|
||
<li><a href="#tan">tan</a>
|
||
<li><a href="#tanh">tanh</a>
|
||
<li><a href="#undo_add_frame">undo_add_frame</a>
|
||
<li><a href="#undo_add_image">undo_add_image</a>
|
||
<li><a href="#undo_add_layer">undo_add_layer</a>
|
||
<li><a href="#undo_can_redo">undo_can_redo</a>
|
||
<li><a href="#undo_can_undo">undo_can_undo</a>
|
||
<li><a href="#undo_close">undo_close</a>
|
||
<li><a href="#undo_disable">undo_disable</a>
|
||
<li><a href="#undo_enable">undo_enable</a>
|
||
<li><a href="#undo_flip">undo_flip</a>
|
||
<li><a href="#undo_free">undo_free</a>
|
||
<li><a href="#undo_image">undo_image</a>
|
||
<li><a href="#undo_is_disabled">undo_is_disabled</a>
|
||
<li><a href="#undo_is_enabled">undo_is_enabled</a>
|
||
<li><a href="#undo_move_layer">undo_move_layer</a>
|
||
<li><a href="#undo_new">undo_new</a>
|
||
<li><a href="#undo_open">undo_open</a>
|
||
<li><a href="#undo_redo">undo_redo</a>
|
||
<li><a href="#undo_remove_frame">undo_remove_frame</a>
|
||
<li><a href="#undo_remove_image">undo_remove_image</a>
|
||
<li><a href="#undo_remove_layer">undo_remove_layer</a>
|
||
<li><a href="#undo_replace_image">undo_replace_image</a>
|
||
<li><a href="#undo_set_layer">undo_set_layer</a>
|
||
<li><a href="#undo_set_mask">undo_set_mask</a>
|
||
<li><a href="#undo_undo">undo_undo</a>
|
||
|
||
|
||
|
||
|
||
</body>
|
||
</html>
|