ewol/ewol__compositing__Image.html

429 lines
23 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>ewol Library</title>
<link rel="stylesheet" href="base.css">
<link rel="stylesheet" href="menu.css">
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="container">
<h1>ewol Library</h1>
<div id="menu">
<h2>ewol</h2>
<ul class="niveau1">
<li class="sousmenu"><a>compositing</a>
<ul class="niveau2">
<li><a href="ewol__Compositing.html">Compositing</a></li>
<li><a href="ewol__compositing__Area.html">Area</a></li>
<li><a href="ewol__compositing__Drawing.html">Drawing</a></li>
<li><a href="ewol__compositing__Image.html">Image</a></li>
<li><a href="ewol__compositing__Shaper.html">Shaper</a></li>
<li><a href="ewol__compositing__Sprite.html">Sprite</a></li>
<li><a href="ewol__compositing__Text.html">Text</a></li>
</ul>
</li>
<li class="sousmenu"><a>context</a>
<ul class="niveau2">
<li><a href="ewol__Context.html">Context</a></li>
<li><a href="ewol__context__CommandLine.html">CommandLine</a></li>
<li><a href="ewol__context__ConfigFont.html">ConfigFont</a></li>
<li><a href="ewol__context__InputManager.html">InputManager</a></li>
<li class="sousmenu"><a href="ewol__context__clipBoard.html">clipBoard</a>
<ul class="niveau3">
<li><a href="ewol__context__clipBoard.html::clipboardListe">clipboardListe</a></li>
</ul>
</li>
<li><a href="ewol__context__cursorDisplay.html">cursorDisplay</a></li>
</ul>
</li>
<li class="sousmenu"><a>event</a>
<ul class="niveau2">
<li><a href="ewol__event__Entry.html">Entry</a></li>
<li><a href="ewol__event__EntrySystem.html">EntrySystem</a></li>
<li><a href="ewol__event__Input.html">Input</a></li>
<li><a href="ewol__event__InputSystem.html">InputSystem</a></li>
<li><a href="ewol__event__Time.html">Time</a></li>
</ul>
</li>
<li class="sousmenu"><a>key</a>
<ul class="niveau2">
<li><a href="ewol__key__Special.html">Special</a></li>
<li><a href="ewol__key__keyboard.html">keyboard</a></li>
<li><a href="ewol__key__status.html">status</a></li>
<li><a href="ewol__key__type.html">type</a></li>
</ul>
</li>
<li class="sousmenu"><a>object</a>
<ul class="niveau2">
<li><a href="ewol__Object.html">Object</a></li>
<li><a href="ewol__object__Config.html">Config</a></li>
<li><a href="ewol__object__ConfigElement.html">ConfigElement</a></li>
<li><a href="ewol__object__Manager.html">Manager</a></li>
<li><a href="ewol__object__Message.html">Message</a></li>
<li class="sousmenu"><a href="ewol__object__MultiCast.html">MultiCast</a>
<ul class="niveau3">
<li><a href="ewol__object__MultiCast.html::MessageList">MessageList</a></li>
</ul>
</li>
</ul>
</li>
<li class="sousmenu"><a>openGL</a>
<ul class="niveau2">
<li><a href="ewol__openGL__openGlFlags.html">openGlFlags</a></li>
</ul>
</li>
<li class="sousmenu"><a>resource</a>
<ul class="niveau2">
<li><a href="ewol__Resource.html">Resource</a></li>
<li><a href="ewol__resource__Colored3DObject.html">Colored3DObject</a></li>
<li><a href="ewol__resource__ConfigFile.html">ConfigFile</a></li>
<li><a href="ewol__resource__FontBase.html">FontBase</a></li>
<li><a href="ewol__resource__FontFreeType.html">FontFreeType</a></li>
<li><a href="ewol__resource__Manager.html">Manager</a></li>
<li><a href="ewol__resource__Program.html">Program</a></li>
<li><a href="ewol__resource__Shader.html">Shader</a></li>
<li><a href="ewol__resource__Texture.html">Texture</a></li>
<li><a href="ewol__resource__TextureFile.html">TextureFile</a></li>
<li><a href="ewol__resource__TexturedFont.html">TexturedFont</a></li>
<li><a href="ewol__resource__VirtualBufferObject.html">VirtualBufferObject</a></li>
</ul>
</li>
<li class="sousmenu"><a>widget</a>
<ul class="niveau2">
<li><a href="ewol__Widget.html">Widget</a></li>
<li><a href="ewol__widget__Button.html">Button</a></li>
<li><a href="ewol__widget__ButtonColor.html">ButtonColor</a></li>
<li><a href="ewol__widget__CheckBox.html">CheckBox</a></li>
<li><a href="ewol__widget__ColorBar.html">ColorBar</a></li>
<li><a href="ewol__widget__ColorChooser.html">ColorChooser</a></li>
<li><a href="ewol__widget__Composer.html">Composer</a></li>
<li><a href="ewol__widget__Container.html">Container</a></li>
<li><a href="ewol__widget__ContainerN.html">ContainerN</a></li>
<li><a href="ewol__widget__ContextMenu.html">ContextMenu</a></li>
<li><a href="ewol__widget__Entry.html">Entry</a></li>
<li><a href="ewol__widget__FileChooser.html">FileChooser</a></li>
<li class="sousmenu"><a href="ewol__widget__Gird.html">Gird</a>
<ul class="niveau3">
<li><a href="ewol__widget__Gird.html::GirdProperties">GirdProperties</a></li>
</ul>
</li>
<li><a href="ewol__widget__Image.html">Image</a></li>
<li><a href="ewol__widget__Joystick.html">Joystick</a></li>
<li><a href="ewol__widget__Label.html">Label</a></li>
<li><a href="ewol__widget__Layer.html">Layer</a></li>
<li><a href="ewol__widget__List.html">List</a></li>
<li><a href="ewol__widget__ListFileSystem.html">ListFileSystem</a></li>
<li><a href="ewol__widget__Manager.html">Manager</a></li>
<li><a href="ewol__widget__Menu.html">Menu</a></li>
<li><a href="ewol__widget__MenuElement.html">MenuElement</a></li>
<li><a href="ewol__widget__Parameter.html">Parameter</a></li>
<li><a href="ewol__widget__ParameterList.html">ParameterList</a></li>
<li><a href="ewol__widget__PopUp.html">PopUp</a></li>
<li><a href="ewol__widget__ProgressBar.html">ProgressBar</a></li>
<li><a href="ewol__widget__Scroll.html">Scroll</a></li>
<li><a href="ewol__widget__Sizer.html">Sizer</a></li>
<li><a href="ewol__widget__Slider.html">Slider</a></li>
<li><a href="ewol__widget__Spacer.html">Spacer</a></li>
<li><a href="ewol__widget__StdPopUp.html">StdPopUp</a></li>
<li><a href="ewol__widget__WSlider.html">WSlider</a></li>
<li><a href="ewol__widget__WidgetScrooled.html">WidgetScrooled</a></li>
<li><a href="ewol__widget__Windows.html">Windows</a></li>
<li><a href="ewol__widget__elementPL.html">elementPL</a></li>
</ul>
</li>
<ul>
<h3> </h3>
</div>
</div>
</div>
<div class="container" id="content">
<h1>Class: ewol::compositing::Image</h1>
<br/>
<h2>Constructor and Destructor:</h2>
<pre>
+ <a class="code-function" href="#Image">Image</a> (<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_imageName</span>);<br>+ ~<a class="code-function" href="#Image">Image</a> (<span class="code-type">void</span>);<br></pre>
<h2>Synopsis:</h2>
<pre>
+ <span class="code-type">void</span> <a class="code-function" href="#draw">draw</a> (<span class="code-type">bool</span> <span class="code-argument">_disableDepthTest</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#clear">clear</a> (<span class="code-type">void</span>);<br>+ <span class="code-storage-keyword">const</span> vec3 & <a class="code-function" href="#getPos">getPos</a> (<span class="code-type">void</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setPos">setPos</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setPos">setPos</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setRelPos">setRelPos</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setRelPos">setRelPos</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setColor">setColor</a> (<span class="code-storage-keyword">const</span> etk::Color<> & <span class="code-argument">_color</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setClippingWidth">setClippingWidth</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>,<br/> vec3 <span class="code-argument">_width</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setClippingWidth">setClippingWidth</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>,<br/> <span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_width</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setClipping">setClipping</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>,<br/> vec3 <span class="code-argument">_posEnd</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setClipping">setClipping</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>,<br/> <span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_posEnd</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setClippingMode">setClippingMode</a> (<span class="code-type">bool</span> <span class="code-argument">_newMode</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setAngle">setAngle</a> (<span class="code-type">float</span> <span class="code-argument">_angleRad</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#print">print</a> (<span class="code-storage-keyword">const</span> ivec2 & <span class="code-argument">_size</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#print">print</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#printPart">printPart</a> (<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>,<br/> <span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_sourcePosStart</span>,<br/> <span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_sourcePosStop</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setSource">setSource</a> (<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_newFile</span>,<br/> <span class="code-type">int32_t</span> <span class="code-argument">_size</span>);<br>+ <span class="code-type">void</span> <a class="code-function" href="#setSource">setSource</a> (<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_newFile</span>,<br/> <span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>);<br>+ <span class="code-type">bool</span> <a class="code-function" href="#hasSources">hasSources</a> (<span class="code-type">void</span>);<br>+ vec2 <a class="code-function" href="#getRealSize">getRealSize</a> (<span class="code-type">void</span>);<br>- <span class="code-type">void</span> <a class="code-function" href="#loadProgram">loadProgram</a> (<span class="code-type">void</span>);<br></pre>
<h2>Object Hierarchy:</h2>
<pre>
<a href="ewol__Compositing.html">ewol::Compositing</a>
+--> <b>ewol::compositing::Image</b>
+--> <a href="ewol__compositing__Sprite.html">ewol::compositing::Sprite</a>
</pre>
<br/>
<h2>Detail:<h2>
<h3>ewol::compositing::<a id="Image">Image</a> ()</h3>
<pre>
<span class="code-function">Image</span>(<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_imageName</span>);</pre>
<br/>
generic constructor
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_imageName</span> Name of the file that might be loaded
<br/></ul>
<br/>
<hr/>
<h3>ewol::compositing::~<a id="Image">Image</a> ()</h3>
<pre>
~<span class="code-function">Image</span>(<span class="code-type">void</span>);</pre>
<br/>
generic destructor
<br/><br/>
<hr/>
<h3><a id="draw">draw</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">draw</span>(<span class="code-type">bool</span> <span class="code-argument">_disableDepthTest</span>);</pre>
<br/>
draw All the refistered text in the current element on openGL
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_disableDepthTest</span> disable the Depth test for display
<br/></ul>
<br/>
<hr/>
<h3><a id="clear">clear</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">clear</span>(<span class="code-type">void</span>);</pre>
<br/>
clear alll tre registered element in the current element
<br/><br/>
<hr/>
<h3><a id="getPos">getPos</a> ()</h3>
<pre>
<span class="code-storage-keyword">const</span> vec3 & <span class="code-function">getPos</span>(<span class="code-type">void</span>);</pre>
<br/>
get the current display position (sometime needed in the gui control)
<br/><ul>
<b>Return:</b> the current position.
<br/></ul>
<br/>
<hr/>
<h3><a id="setPos">setPos</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setPos</span>(<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>);</pre>
<br/>
set position for the next text writen
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_pos</span> Position of the text (in 3D)
<br/></ul>
<br/>
<hr/>
<h3><a id="setPos">setPos</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setPos</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="setRelPos">setRelPos</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setRelPos</span>(<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>);</pre>
<br/>
set relative position for the next text writen
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_pos</span> ofset apply of the text (in 3D)
<br/></ul>
<br/>
<hr/>
<h3><a id="setRelPos">setRelPos</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setRelPos</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="setColor">setColor</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setColor</span>(<span class="code-storage-keyword">const</span> etk::Color<> & <span class="code-argument">_color</span>);</pre>
<br/>
set the Color of the current foreground font
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_color</span> Color to set on foreground (for next print)
<br/></ul>
<br/>
<hr/>
<h3><a id="setClippingWidth">setClippingWidth</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setClippingWidth</span>(<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>,
vec3 <span class="code-argument">_width</span>);</pre>
<br/>
Request a clipping area for the text (next draw only)
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_pos</span> Start position of the clipping
<br/><b>Parameter [input]:</b> <span class="code-argument">_width</span> Width size of the clipping
<br/></ul>
<br/>
<hr/>
<h3><a id="setClippingWidth">setClippingWidth</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setClippingWidth</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>,
<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_width</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="setClipping">setClipping</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setClipping</span>(<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">_pos</span>,
vec3 <span class="code-argument">_posEnd</span>);</pre>
<br/>
Request a clipping area for the text (next draw only)
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_pos</span> Start position of the clipping
<br/><b>Parameter [input]:</b> <span class="code-argument">_posEnd</span> End position of the clipping
<br/></ul>
<br/>
<hr/>
<h3><a id="setClipping">setClipping</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setClipping</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_pos</span>,
<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_posEnd</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="setClippingMode">setClippingMode</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setClippingMode</span>(<span class="code-type">bool</span> <span class="code-argument">_newMode</span>);</pre>
<br/>
enable/Disable the clipping (without lose the current clipping position)
<br/>_newMode The new status of the clipping
<br/><br/>
<hr/>
<h3><a id="setAngle">setAngle</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setAngle</span>(<span class="code-type">float</span> <span class="code-argument">_angleRad</span>);</pre>
<br/>
set a unique rotation of this element (not set in the rotate Generic system)
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_angle</span> Angle to set in radiant.
<br/></ul>
<br/>
<hr/>
<h3><a id="print">print</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">print</span>(<span class="code-storage-keyword">const</span> ivec2 & <span class="code-argument">_size</span>);</pre>
<br/>
add a compleate of the image to display with the requested size
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_size</span> size of the output image
<br/></ul>
<br/>
<hr/>
<h3><a id="print">print</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">print</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="printPart">printPart</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">printPart</span>(<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>,
<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_sourcePosStart</span>,
<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_sourcePosStop</span>);</pre>
<br/>
add a part of the image to display with the requested size
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_size</span> size of the output image
<br/><b>Parameter [input]:</b> <span class="code-argument">_sourcePosStart</span> Start position in the image [0..1] (can be bigger but this repeate the image).
<br/><b>Parameter [input]:</b> <span class="code-argument">_sourcePosStop</span> Stop position in the image [0..1] (can be bigger but this repeate the image).
<br/></ul>
<br/>
<hr/>
<h3><a id="setSource">setSource</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setSource</span>(<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_newFile</span>,
<span class="code-type">int32_t</span> <span class="code-argument">_size</span>);</pre>
<br/>
change the image Source == > can not be done to display 2 images at the same time ...
<br/><ul>
<b>Parameter [input]:</b> <span class="code-argument">_newFile</span> New file of the Image
<br/><b>Parameter [input]:</b> <span class="code-argument">_size</span> for the image when Verctorial image loading is requested
<br/></ul>
<br/>
<hr/>
<h3><a id="setSource">setSource</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">setSource</span>(<span class="code-storage-keyword">const</span> <a href="http://www.cplusplus.com/reference/string/string/" class="code-type">std::string</a> & <span class="code-argument">_newFile</span>,
<span class="code-storage-keyword">const</span> vec2 & <span class="code-argument">_size</span>);</pre>
<br/>
<br/>
<hr/>
<h3><a id="hasSources">hasSources</a> ()</h3>
<pre>
<span class="code-type">bool</span> <span class="code-function">hasSources</span>(<span class="code-type">void</span>);</pre>
<br/>
Sometimes the user declare an image but not allocate the ressources all the time, this is to know it ..
<br/><ul>
<b>Return:</b> the validity od the resources.
<br/></ul>
<br/>
<hr/>
<h3><a id="getRealSize">getRealSize</a> ()</h3>
<pre>
vec2 <span class="code-function">getRealSize</span>(<span class="code-type">void</span>);</pre>
<br/>
get the source image registered size in the file (<0 when multiple size image)
<br/><ul>
<b>Return:</b> tre image registered size
<br/></ul>
<br/>
<hr/>
<h3><a id="loadProgram">loadProgram</a> ()</h3>
<pre>
<span class="code-type">void</span> <span class="code-function">loadProgram</span>(<span class="code-type">void</span>);</pre>
<br/>
load the openGL program and get all the ID needed
<br/><br/>
<hr/>
</div>
</body>
</html>