java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.awt.geom
类 FlatteningPathIterator

java.lang.Object
  继承者 java.awt.geom.FlatteningPathIterator
所有已实现的接口:
PathIterator

public class FlatteningPathIterator
extends Object
implements PathIterator

FlatteningPathIterator 类返回另一个 PathIterator 对象的变平视图。其他 Shape 类可以使用此类为其路径提供变平行为,无需自己进行插值计算。


字段摘要
 
从接口 java.awt.geom.PathIterator 继承的字段
SEG_CLOSE, SEG_CUBICTO, SEG_LINETO, SEG_MOVETO, SEG_QUADTO, WIND_EVEN_ODD, WIND_NON_ZERO
 
构造方法摘要
FlatteningPathIterator(PathIterator src, double flatness)
          构造一个在路径上迭代时能使路径变平的新 FlatteningPathIterator 对象。
FlatteningPathIterator(PathIterator src, double flatness, int limit)
          构造一个在路径上迭代时能使路径变平的新 FlatteningPathIterator 对象。
 
方法摘要
 int currentSegment(double[] coords)
          使用迭代返回当前路径段的坐标和类型。
 int currentSegment(float[] coords)
          使用迭代返回当前路径段的坐标和类型。
 double getFlatness()
          返回此迭代器的平面度。
 int getRecursionLimit()
          返回此迭代器的递归限制。
 int getWindingRule()
          返回用于确定路径迭代的缠绕规则。
 boolean isDone()
          测试迭代是否完成。
 void next()
          只要最初的遍历方向上存在多个点,就沿该方向将迭代器移动到下一个路径段。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

FlatteningPathIterator

public FlatteningPathIterator(PathIterator src,
                              double flatness)
构造一个在路径上迭代时能使路径变平的新 FlatteningPathIterator 对象。迭代器不会将从源迭代器读取的任何曲线细分至 10 级以上,10 级以上的细分超过了每曲线 1024 个线段这一最大值。

参数:
src - 要在其上迭代的未变平初始路径
flatness - 控制点与变平曲线间允许的最大距离

FlatteningPathIterator

public FlatteningPathIterator(PathIterator src,
                              double flatness,
                              int limit)
构造一个在路径上迭代时能使路径变平的新 FlatteningPathIterator 对象。可以使用 limit 参数控制迭代器在不依靠 flatness 参数进行测量的情况下假定曲线已经足够平之前,可以进行的最大递归细分次数。因此,变平迭代永远不会为每个曲线生成多于最大值 (2^limit) 的线段数。

参数:
src - 要在其上迭代的未变平初始路径
flatness - 控制点到变平曲线间允许的最大距离
limit - 允许对任何曲线段进行递归细分的最大次数
抛出:
IllegalArgumentException - 如果 flatnesslimit 小于零。
方法详细信息

getFlatness

public double getFlatness()
返回此迭代器的平面度。

返回:
FlatteningPathIterator 的平面度。

getRecursionLimit

public int getRecursionLimit()
返回此迭代器的递归限制。

返回:
FlatteningPathIterator 的递归限制。

getWindingRule

public int getWindingRule()
返回用于确定路径迭代的缠绕规则。

指定者:
接口 PathIterator 中的 getWindingRule
返回:
要在其上进行迭代的未变平初始路径的缠绕规则。
另请参见:
PathIterator.WIND_EVEN_ODD, PathIterator.WIND_NON_ZERO

isDone

public boolean isDone()
测试迭代是否完成。

指定者:
接口 PathIterator 中的 isDone
返回:
如果已经读取了所有的段,则返回 true;否则返回 false

next

public void next()
只要最初的遍历方向上存在多个点,就沿该方向将迭代器移动到下一个路径段。

指定者:
接口 PathIterator 中的 next

currentSegment

public int currentSegment(float[] coords)
使用迭代返回当前路径段的坐标和类型。返回值就是路径段类型:SEG_MOVETO、SEG_LINETO 或 SEG_CLOSE。必须传入长度为 6 的 float 数组,该数组可用于存储点的坐标。每个点都存储为一对 float x、y 坐标。SEG_MOVETO 和 SEG_LINETO 类型均返回一个点,而 SEG_CLOSE 不返回点。

指定者:
接口 PathIterator 中的 currentSegment
参数:
coords - 保存从此方法返回数据的数组
返回:
当前路径段的路径段类型。
抛出:
NoSuchElementException - 如果在要返回的变平路径中不存在多个元素。
另请参见:
PathIterator.SEG_MOVETO, PathIterator.SEG_LINETO, PathIterator.SEG_CLOSE

currentSegment

public int currentSegment(double[] coords)
使用迭代返回当前路径段的坐标和类型。返回值就是路径段类型:SEG_MOVETO、SEG_LINETO 或 SEG_CLOSE。必须传入长度为 6 的 double 数组,该数组可用于存储点的坐标。每个点都存储为一对 double x、y 坐标。SEG_MOVETO 和 SEG_LINETO 类型均返回一个点,而 SEG_CLOSE 不返回点。

指定者:
接口 PathIterator 中的 currentSegment
参数:
coords - 保存从此方法返回数据的数组
返回:
当前路径段的路径段类型。
抛出:
NoSuchElementException - 如果在要返回的变平路径中不存在多个元素。
另请参见:
PathIterator.SEG_MOVETO, PathIterator.SEG_LINETO, PathIterator.SEG_CLOSE

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策