\hypertarget{group__Evas__Canvas3D__Primitive}{}\doxysection{Primitive Object}
\label{group__Evas__Canvas3D__Primitive}\index{Primitive Object@{Primitive Object}}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_gaad5cba79d9f703144bcc2b4aa242fdc8}\label{group__Evas__Canvas3D__Primitive_gaad5cba79d9f703144bcc2b4aa242fdc8}} 
\#define \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gaad5cba79d9f703144bcc2b4aa242fdc8}{E\+V\+A\+S\+\_\+\+C\+A\+N\+V\+A\+S3\+D\+\_\+\+P\+R\+I\+M\+I\+T\+I\+V\+E\+\_\+\+C\+L\+A\+SS}}~evas\+\_\+canvas3d\+\_\+primitive\+\_\+class\+\_\+get()
\begin{DoxyCompactList}\small\item\em Evas 3D canvas primitive class. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef void() \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gaef50a8e2254d336e19858e801fd04e37}{Evas\+\_\+\+Canvas3\+D\+\_\+\+Surface\+\_\+\+Func}}(\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$out\+\_\+x, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$out\+\_\+y, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$out\+\_\+z, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} a, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} b)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga234ce7e0bd1e015ec4bb2bfb29c666b6}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+form\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, Evas\+\_\+\+Canvas3\+D\+\_\+\+Mesh\+\_\+\+Primitive form)
\begin{DoxyCompactList}\small\item\em The form of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI Evas\+\_\+\+Canvas3\+D\+\_\+\+Mesh\+\_\+\+Primitive \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga2884433915650b9bb863a5bdb263f3ab}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+form\+\_\+get}} (const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em The form of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gadaad335d0b0d130290686faf9142a06c}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+mode\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, Evas\+\_\+\+Canvas3\+D\+\_\+\+Primitive\+\_\+\+Mode mode)
\begin{DoxyCompactList}\small\item\em The mode of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI Evas\+\_\+\+Canvas3\+D\+\_\+\+Primitive\+\_\+\+Mode \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga5610bb3f85f980eeadbc18ff9c922581}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+mode\+\_\+get}} (const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em The mode of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gabc0430a439c7097eac4aaa52f2a85de2}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+ratio\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} ratio)
\begin{DoxyCompactList}\small\item\em The ratio of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga3ea86f9c177c64d34c9860ae8e545d59}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+ratio\+\_\+get}} (const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em The ratio of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga292ab6ad26153495bb6d2d4cc2090f25}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+precision\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, int precision)
\begin{DoxyCompactList}\small\item\em The precision of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI int \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gaa990f89f6e9b5b8f975ecab656659e80}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+precision\+\_\+get}} (const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj)
\begin{DoxyCompactList}\small\item\em The precision of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga05e4877b88711fd1e17d2d3792bfea57}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+surface\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gaef50a8e2254d336e19858e801fd04e37}{Evas\+\_\+\+Canvas3\+D\+\_\+\+Surface\+\_\+\+Func}} $\ast$surface)
\begin{DoxyCompactList}\small\item\em The surface of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga5cb5fa27635dae0f6425723293991573}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+tex\+\_\+scale\+\_\+set}} (\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} tex\+\_\+scale\+\_\+x, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} tex\+\_\+scale\+\_\+y)
\begin{DoxyCompactList}\small\item\em The texture scale of the given primitive. \end{DoxyCompactList}\item 
E\+O\+A\+PI void \mbox{\hyperlink{group__Evas__Canvas3D__Primitive_ga7bf630fcaadc10a190e0ace8c1438b98}{evas\+\_\+canvas3d\+\_\+primitive\+\_\+tex\+\_\+scale\+\_\+get}} (const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$obj, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$tex\+\_\+scale\+\_\+x, \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$tex\+\_\+scale\+\_\+y)
\begin{DoxyCompactList}\small\item\em The texture scale of the given primitive. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The Evas\+\_\+\+Canvas3\+D\+\_\+\+Primitive structure defines the data for generating meshes for various types of primitive shapes such as cubes, cylinders, spheres, surfaces, terrain, etc. Use the \mbox{\hyperlink{group__Evas__Canvas3D__Mesh_gae3851991d108d2a9498e6204274f4e40}{evas\+\_\+canvas3d\+\_\+mesh\+\_\+from\+\_\+primitive\+\_\+set()}} function to generate a mesh\textquotesingle{}s frame of this primitive. 

\doxysubsection{Typedef Documentation}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_gaef50a8e2254d336e19858e801fd04e37}\label{group__Evas__Canvas3D__Primitive_gaef50a8e2254d336e19858e801fd04e37}} 
\index{Primitive Object@{Primitive Object}!Evas\_Canvas3D\_Surface\_Func@{Evas\_Canvas3D\_Surface\_Func}}
\index{Evas\_Canvas3D\_Surface\_Func@{Evas\_Canvas3D\_Surface\_Func}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{Evas\_Canvas3D\_Surface\_Func}{Evas\_Canvas3D\_Surface\_Func}}
{\footnotesize\ttfamily Evas\+\_\+\+Canvas3\+D\+\_\+\+Surface\+\_\+\+Func}

The Evas\+\_\+\+Canvas3\+D\+\_\+\+Surface\+\_\+\+Func type of functions are used to create parametric surfaces as primitives. These compute the vertex x,y,z values for given v,u values.


\begin{DoxyParams}{Parameters}
{\em out\+\_\+x} & The x component of the calculated value. \\
\hline
{\em out\+\_\+y} & The y component of the calculated value. \\
\hline
{\em out\+\_\+z} & The z component of the calculated value. \\
\hline
{\em a} & is the v value. \\
\hline
{\em b} & is the u value.\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Canvas3D__Primitive}{Primitive Object}}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga234ce7e0bd1e015ec4bb2bfb29c666b6}\label{group__Evas__Canvas3D__Primitive_ga234ce7e0bd1e015ec4bb2bfb29c666b6}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_form\_set@{evas\_canvas3d\_primitive\_form\_set}}
\index{evas\_canvas3d\_primitive\_form\_set@{evas\_canvas3d\_primitive\_form\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_form\_set()}{evas\_canvas3d\_primitive\_form\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+form\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{Evas\+\_\+\+Canvas3\+D\+\_\+\+Mesh\+\_\+\+Primitive}]{form }\end{DoxyParamCaption})}



The form of the given primitive. 

Form defines which function will be chosen to set data to mesh on call of evas\+\_\+canvas3d\+\_\+mesh\+\_\+primitive\+\_\+set.

Now available next forms of primitives are tabulated primitives (S\+Q\+U\+A\+RE and C\+U\+BE), solids of revolution (C\+Y\+L\+I\+N\+D\+ER, C\+O\+NE, S\+P\+H\+E\+RE and T\+O\+R\+US) and surfaces (S\+U\+R\+F\+A\+CE and T\+E\+R\+R\+A\+IN).

Default form is E\+V\+A\+S\+\_\+\+C\+A\+N\+V\+A\+S3\+D\+\_\+\+M\+E\+S\+H\+\_\+\+P\+R\+I\+M\+I\+T\+I\+V\+E\+\_\+\+N\+O\+NE.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em form} & Form of primitive. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga2884433915650b9bb863a5bdb263f3ab}\label{group__Evas__Canvas3D__Primitive_ga2884433915650b9bb863a5bdb263f3ab}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_form\_get@{evas\_canvas3d\_primitive\_form\_get}}
\index{evas\_canvas3d\_primitive\_form\_get@{evas\_canvas3d\_primitive\_form\_get}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_form\_get()}{evas\_canvas3d\_primitive\_form\_get()}}
{\footnotesize\ttfamily E\+O\+A\+PI Evas\+\_\+\+Canvas3\+D\+\_\+\+Mesh\+\_\+\+Primitive evas\+\_\+canvas3d\+\_\+primitive\+\_\+form\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



The form of the given primitive. 

Form defines which function will be chosen to set data to mesh on call of evas\+\_\+canvas3d\+\_\+mesh\+\_\+primitive\+\_\+set.

Now available next forms of primitives are tabulated primitives (S\+Q\+U\+A\+RE and C\+U\+BE), solids of revolution (C\+Y\+L\+I\+N\+D\+ER, C\+O\+NE, S\+P\+H\+E\+RE and T\+O\+R\+US) and surfaces (S\+U\+R\+F\+A\+CE and T\+E\+R\+R\+A\+IN).

Default form is E\+V\+A\+S\+\_\+\+C\+A\+N\+V\+A\+S3\+D\+\_\+\+M\+E\+S\+H\+\_\+\+P\+R\+I\+M\+I\+T\+I\+V\+E\+\_\+\+N\+O\+NE.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Form of primitive. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_gadaad335d0b0d130290686faf9142a06c}\label{group__Evas__Canvas3D__Primitive_gadaad335d0b0d130290686faf9142a06c}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_mode\_set@{evas\_canvas3d\_primitive\_mode\_set}}
\index{evas\_canvas3d\_primitive\_mode\_set@{evas\_canvas3d\_primitive\_mode\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_mode\_set()}{evas\_canvas3d\_primitive\_mode\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+mode\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{Evas\+\_\+\+Canvas3\+D\+\_\+\+Primitive\+\_\+\+Mode}]{mode }\end{DoxyParamCaption})}



The mode of the given primitive. 

Mode defines which function will be chosen to set data to mesh on call of evas\+\_\+canvas3d\+\_\+mesh\+\_\+primitive\+\_\+set. It helps to choose an alternative algorithm for primitives with a given form, such as a cone without a base or sphere textured in alternative way.

Mods of primitives are now available without base (bases) (supported for cylinder and cone) and with alternative UV (supported by sphere).

Default form is E\+V\+A\+S\+\_\+\+C\+A\+N\+V\+A\+S3\+D\+\_\+\+P\+R\+I\+M\+I\+T\+I\+V\+E\+\_\+\+M\+O\+D\+E\+\_\+\+D\+E\+F\+A\+U\+LT.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em mode} & Mode of primitive. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga5610bb3f85f980eeadbc18ff9c922581}\label{group__Evas__Canvas3D__Primitive_ga5610bb3f85f980eeadbc18ff9c922581}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_mode\_get@{evas\_canvas3d\_primitive\_mode\_get}}
\index{evas\_canvas3d\_primitive\_mode\_get@{evas\_canvas3d\_primitive\_mode\_get}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_mode\_get()}{evas\_canvas3d\_primitive\_mode\_get()}}
{\footnotesize\ttfamily E\+O\+A\+PI Evas\+\_\+\+Canvas3\+D\+\_\+\+Primitive\+\_\+\+Mode evas\+\_\+canvas3d\+\_\+primitive\+\_\+mode\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



The mode of the given primitive. 

Mode defines which function will be chosen to set data to mesh on call of evas\+\_\+canvas3d\+\_\+mesh\+\_\+primitive\+\_\+set. It helps to choose an alternative algorithm for primitives with a given form, such as a cone without a base or sphere textured in alternative way.

Mods of primitives are now available without base (bases) (supported for cylinder and cone) and with alternative UV (supported by sphere).

Default form is E\+V\+A\+S\+\_\+\+C\+A\+N\+V\+A\+S3\+D\+\_\+\+P\+R\+I\+M\+I\+T\+I\+V\+E\+\_\+\+M\+O\+D\+E\+\_\+\+D\+E\+F\+A\+U\+LT.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Mode of primitive. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_gabc0430a439c7097eac4aaa52f2a85de2}\label{group__Evas__Canvas3D__Primitive_gabc0430a439c7097eac4aaa52f2a85de2}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_ratio\_set@{evas\_canvas3d\_primitive\_ratio\_set}}
\index{evas\_canvas3d\_primitive\_ratio\_set@{evas\_canvas3d\_primitive\_ratio\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_ratio\_set()}{evas\_canvas3d\_primitive\_ratio\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+ratio\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}}}]{ratio }\end{DoxyParamCaption})}



The ratio of the given primitive. 

Ratio is used only in torus as the ratio of the major radius and minor radius. For this usage Available values is from 1.\+0 to infinity. If ratio for torus has a bad value, 3.\+0 will be used as the ratio.

Default ratio is 3.\+0.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em ratio} & Ratio of primitive. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga3ea86f9c177c64d34c9860ae8e545d59}\label{group__Evas__Canvas3D__Primitive_ga3ea86f9c177c64d34c9860ae8e545d59}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_ratio\_get@{evas\_canvas3d\_primitive\_ratio\_get}}
\index{evas\_canvas3d\_primitive\_ratio\_get@{evas\_canvas3d\_primitive\_ratio\_get}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_ratio\_get()}{evas\_canvas3d\_primitive\_ratio\_get()}}
{\footnotesize\ttfamily E\+O\+A\+PI \mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} evas\+\_\+canvas3d\+\_\+primitive\+\_\+ratio\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



The ratio of the given primitive. 

Ratio is used only in torus as the ratio of the major radius and minor radius. For this usage Available values is from 1.\+0 to infinity. If ratio for torus has a bad value, 3.\+0 will be used as the ratio.

Default ratio is 3.\+0.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Ratio of primitive. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga292ab6ad26153495bb6d2d4cc2090f25}\label{group__Evas__Canvas3D__Primitive_ga292ab6ad26153495bb6d2d4cc2090f25}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_precision\_set@{evas\_canvas3d\_primitive\_precision\_set}}
\index{evas\_canvas3d\_primitive\_precision\_set@{evas\_canvas3d\_primitive\_precision\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_precision\_set()}{evas\_canvas3d\_primitive\_precision\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+precision\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{int}]{precision }\end{DoxyParamCaption})}



The precision of the given primitive. 

Precision is used in all non tabulated primitives and defines the precision of created primitives. Available values range from 3 to infinity. If the value is more than 100, you may see a warning about possibility of incorrect values or slow processing.

Default ratio is 10.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em precision} & Precision of primitive. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_gaa990f89f6e9b5b8f975ecab656659e80}\label{group__Evas__Canvas3D__Primitive_gaa990f89f6e9b5b8f975ecab656659e80}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_precision\_get@{evas\_canvas3d\_primitive\_precision\_get}}
\index{evas\_canvas3d\_primitive\_precision\_get@{evas\_canvas3d\_primitive\_precision\_get}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_precision\_get()}{evas\_canvas3d\_primitive\_precision\_get()}}
{\footnotesize\ttfamily E\+O\+A\+PI int evas\+\_\+canvas3d\+\_\+primitive\+\_\+precision\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj }\end{DoxyParamCaption})}



The precision of the given primitive. 

Precision is used in all non tabulated primitives and defines the precision of created primitives. Available values range from 3 to infinity. If the value is more than 100, you may see a warning about possibility of incorrect values or slow processing.

Default ratio is 10.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Precision of primitive. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga05e4877b88711fd1e17d2d3792bfea57}\label{group__Evas__Canvas3D__Primitive_ga05e4877b88711fd1e17d2d3792bfea57}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_surface\_set@{evas\_canvas3d\_primitive\_surface\_set}}
\index{evas\_canvas3d\_primitive\_surface\_set@{evas\_canvas3d\_primitive\_surface\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_surface\_set()}{evas\_canvas3d\_primitive\_surface\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+surface\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Canvas3D__Primitive_gaef50a8e2254d336e19858e801fd04e37}{Evas\+\_\+\+Canvas3\+D\+\_\+\+Surface\+\_\+\+Func}} $\ast$}]{surface }\end{DoxyParamCaption})}



The surface of the given primitive. 

Surface is used only in surface primitives and defines the equation of filling mesh data on call of evas\+\_\+canvas3d\+\_\+mesh\+\_\+primitive\+\_\+set.

This allows you to create customers primitives like shell, heart, hyperbolic paraboloid etc. See \+\_\+shell\+\_\+func in examples/evas/evas-\/3d-\/visual-\/test.\+c or \+\_\+perlin\+\_\+terrain in modules/evas/primitives/surfaces/terrain.\+c for usage examples.

Default surface is {\ttfamily null} 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em surface} & Pointer to customers surface function. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga5cb5fa27635dae0f6425723293991573}\label{group__Evas__Canvas3D__Primitive_ga5cb5fa27635dae0f6425723293991573}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_tex\_scale\_set@{evas\_canvas3d\_primitive\_tex\_scale\_set}}
\index{evas\_canvas3d\_primitive\_tex\_scale\_set@{evas\_canvas3d\_primitive\_tex\_scale\_set}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_tex\_scale\_set()}{evas\_canvas3d\_primitive\_tex\_scale\_set()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+tex\+\_\+scale\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}}}]{tex\+\_\+scale\+\_\+x,  }\item[{\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}}}]{tex\+\_\+scale\+\_\+y }\end{DoxyParamCaption})}



The texture scale of the given primitive. 

Texture scale uses in all non tabulated primitives and defines scale of texture coordinates or primitives.

It uses to create periodical textured meshes.

Default tex\+\_\+scale is \{1.\+0, 1.\+0\}


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em tex\+\_\+scale\+\_\+x} & Texture scale X coordinate \\
\hline
\mbox{\texttt{ in}}  & {\em tex\+\_\+scale\+\_\+y} & Texture scale Y coordinate \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Canvas3D__Primitive_ga7bf630fcaadc10a190e0ace8c1438b98}\label{group__Evas__Canvas3D__Primitive_ga7bf630fcaadc10a190e0ace8c1438b98}} 
\index{Primitive Object@{Primitive Object}!evas\_canvas3d\_primitive\_tex\_scale\_get@{evas\_canvas3d\_primitive\_tex\_scale\_get}}
\index{evas\_canvas3d\_primitive\_tex\_scale\_get@{evas\_canvas3d\_primitive\_tex\_scale\_get}!Primitive Object@{Primitive Object}}
\doxysubsubsection{\texorpdfstring{evas\_canvas3d\_primitive\_tex\_scale\_get()}{evas\_canvas3d\_primitive\_tex\_scale\_get()}}
{\footnotesize\ttfamily E\+O\+A\+PI void evas\+\_\+canvas3d\+\_\+primitive\+\_\+tex\+\_\+scale\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo}} $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$}]{tex\+\_\+scale\+\_\+x,  }\item[{\mbox{\hyperlink{group__Evas_gafe9cc74872ef141d258c2162fa0ce5ca}{Evas\+\_\+\+Real}} $\ast$}]{tex\+\_\+scale\+\_\+y }\end{DoxyParamCaption})}



The texture scale of the given primitive. 

Texture scale uses in all non tabulated primitives and defines scale of texture coordinates or primitives.

It uses to create periodical textured meshes.

Default tex\+\_\+scale is \{1.\+0, 1.\+0\}


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ out}}  & {\em tex\+\_\+scale\+\_\+x} & Texture scale X coordinate \\
\hline
\mbox{\texttt{ out}}  & {\em tex\+\_\+scale\+\_\+y} & Texture scale Y coordinate \\
\hline
\end{DoxyParams}
