Erik van Blokland 3646055ea2 initial import
git-svn-id: http://svn.robofab.com/trunk@1 b5fa9d6c-a76f-4ffd-b3cb-f825fc41095c
2008-01-07 17:40:34 +00:00

193 lines
4.7 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RoboFab Objects: RPoint</title>
<link href="../default.css" type="text/css" rel="stylesheet" />
</head>
<body>
<div id="modellogo">
<img src="../img/drawmodel_header.jpg" width="595" height="112" />
</div>
<div class="leftcontent">
<h2 class="crb-seealso">
RoboFab
</h2>
<p class="menu">
<a href="../index.html">
Home
</a>
<br />
<a href="../download/license.html">
Download v1.1.1
</a>
<br />
<a href="../intro.html">
Intro
</a>
<br />
<a href="../install.html">
Install Notes
</a>
<br />
<a href="../history.html">
History
</a>
<br />
<a href="../executive.html">
Summary
</a>
</p>
<p class="menu">
<a href="../howto/index.html">
How to's
</a>
<br />
<a href="index.html">
Fab Objects
</a>
<br />
<a href="model.html">
Fab Map
</a>
<br />
<a href="../tools/index.html">
Fab Tools
</a>
<br />
<a href="../ufo/index.html">
UFO Overview
</a>
<br />
<a href="../limitations.html">
Fab Limitations
</a>
</p>
<p class="menu">
<a href="../links/index.html">
Links
</a>
<br />
<a href="../glossary/index.html">
Glossary
</a>
<br />
<a href="../credits.html">
Credits
</a>
</p>
<br />
<br />
<p class="crb-uplink"><a href="index.html">Back to Objects</a></p>
<br />
<br />
<p class="menu">
<a href="../howto/understandcontours.html">Understanding Contours</a><br />
<a href="../howto/usetransformations.html">Using transformations</a><br />
<a href="anchor.html">RAnchor</a><br />
<a href="bpoint.html">bPoint</a><br />
<a href="component.html">RComponent</a><br />
<a href="contour.html">RContour</a><br />
<a href="font.html">RFont</a><br />
<a href="glyph.html">RGlyph</a><br />
<a href="index.html">Objects</a><br />
<a href="info.html">RInfo</a><br />
<a href="kerning.html">RKerning</a><br />
<a href="lib.html">RLib</a><br />
<a href="model.html">Object model</a><br />
<a href="pen.html">Pen objects</a><br />
<a href="segment.html">RSegment</a><br />
</p>
</div>
<div class="footer">
<a href="../feedback.html">
Feedback
</a>
<br />
<a href="../map.html">
Sitemap
</a>
<br />
Please also refer to the
<a href="../download/license.html">
Legal
</a>
<br />
Copyright 2003-2005 RoboFab
<br />
version 1.1.1
</div>
<div id="titlepic">
<img src="../img/offdrawmodel_22.gif" alt="" border="0" />
</div>
<div class="content">
<h1>RoboFab Point</h1>
<h3>Usage</h3>
<pre>contour = CurrentGlyph()[0]
print contour.points[0]
>>> < RPoint for AFont.A[0][0] >
from random import randint
for p in contour.points:
p.x += randint(-10,10)
p.y += randint(-10,10)
c.update()
</pre>
<h3>Description</h3>
<p>
RPoint is perhaps the smallest object in RoboFab objects. It represents one single point with a particular coordinate in a contour. It is used to access off-curve and on-curve points alike. It's cousin, <a href="bpoint">bPoint</a> also provides access to incoming and outgoing bcps. RPoint is exclusively only one single point.
</p>
<h3>Understanding Contours and outlines</h3>
<p>
The way outline data is organised in RoboFab, and how the various objects relate is described here: <a href="../howto/understandcontours.html">understanding contours</a>.
</p>
<h3>Attributes</h3>
<p>
<ul>
<li><strong>x</strong>: the x coordinate of this point.</li>
<li><strong>y</strong>: the y coordinate of this point.</li>
<li><strong>type</strong>: the type of this point.</li>
<li><strong>selected</strong>: boolean for selection state. i.e. &quot;True&quot; or &quot;False&quot;</li>
</ul>
</p>
<h3>UFO only attributes</h3>
<p>
<ul>
<li><strong>name</strong>: the name of the point (UFO only)</li>
</ul>
</p>
<h3>Methods</h3>
<p>
<ul>
<li><strong>copy()</strong>: return a deepcopy of the object.</li>
<li><strong>move((x, y))</strong>: move the anchor of the bPoint to (x,y). The relative coordinates of the bcpIn and bcpOut will remain the same, which means that in fact, they move the same distance.</li>
<li><strong>round()</strong>: round the coordinates to whole integers.</li>
<li><strong>select(state=True)</strong>: select this point.</li>
<li><strong>transform(matrix)</strong>: Transform this point. Use a Transform matrix
object to mess with the point. <a href="../howto/usetransformations.html">See how to use transformations</a>.</li>
</ul>
</p>
</div>
</body>
</html>