PCE version 4C man_modulenamespaceid_tablemodified current_idOIxN class/pathN referenceC hash_tablerefersizeOIxNbothIsN V.path.kindCman_variable_card identifiermodule last_modifiednamesummary descriptionsee_alsoinheritdefaultsOIxN V.path.kindRICdateOIx>êæŠNkindnCstringOIxDetermines whether the line is smooth or a collection of line-segments (poly). For smooth path objects, the number of interpolated points is determined by <->intervals and the chain object holding all interpolated points is available in <-interpolation.CchainsizeOIxIENV.path.interpolationXnOIxpoly (line segments).sNV.path.interpolationOIxNV.path.interpolationRIOI x+'|N interpolationnOI x¹When kind is `smooth', this is a chain of interpolated points. The interpolation is recomputed each time the path has been modified and needs to be painted. See also ->request_compute.OI xIEN V.path.kindXnnsNM.path.G.distanceCman_method_card identifiermodule last_modifiednamesummary descriptionsee_alsoinherit diagnosticsdefaultsbugsOI xNM.path.G.distanceRIOI x<úm'NdistancenOIxNIf the argument is a point object or event object (in which case the `event<-position' is used), compute the distance of this point to the path-line. If the path is interpolated, the distance to the interpolation is computed. If the argument is a graphical, use `graphical<-distance'. See also `line<-distance' and ->in_event_area.nnnnnsNM.path.S.initialiseOIxNM.path.S.initialiseRIOIx4ƒàtN initialisenOIxûThe first argument specifies the <-kind. When <-kind equals smooth, the second argument specifies the <-intervals. If the `points' arguments is supplied, the method ->points is invoked using this argument to specify the initial set of control-points.nnnnnsNM.path.S.appendOIxNM.path.S.appendRIOIx+'íNappendnOIx§Append a point at the end of the path. The point is specified in the <-device coordinate system. ->insert may be used to insert points in the middle or prepend points.OIxIENM.path.S.insertXnnnnsN V.path.pointsOIxN V.path.pointsRIOIx4ƒàNpointsnOIx~Chain of points the line-segments goes through (control-points). The send-method validates and possibly converts all members of the argument chain to be instances of class point and raises the error `unexpected_type' on failure. On successs, it replaces the <-points chain of the path with the argument. The argument thus becomes a part of the path object. See also ->initialise.nnnsNM.path.G.startOIxNM.path.G.startRIOIx>êçNstartnOIxJFirst point of the path (equivalent to Path?points?head). See also <-end.OIxIEN M.path.G.endXnnnnsNM.path.S.insertOIxNM.path.S.insertRIOIx+'?NinsertnOIxÓInsert a new point after the second argument. If the second argument is @nil, the point is added as the first point of the chain. For interactive editing, <-segment may be used to find the point to insert after.OI xIENM.path.S.appendXnnnnsNV.path.fill_patternOI!xNV.path.fill_patternRIOI"x({N fill_patternnOI#xbPattern to fill the interior of the path. To determine the interior, the `Even-Odd-Rule' is used.OI$xIEN$class/bitmap$V.bitmap.statusXnOI%x@nil (not filled)sN V.path.radiusOI&xN V.path.radiusRIOI'x+'ðNradiusnOI(xFRounding radius for the corners of `poly' lines. Not yet implemented.nnOI)x0 (non-rounded corners).sNM.path.S.computeOI*xNM.path.S.computeRIOI+x,Dn`NcomputenOI,xWComputes <-area from the <-points and <-interpolation from <-points if <-kind = smooth.nnnnnsNC.pathCman_class_card identifiermodule last_modifiednamesummary descriptionsee_alsoinherituser_interfacebugsOI-xNC.pathRIOI.x4ƒÝNpathnOI/x=A path is a line going through a set of points. There are two `kinds' of paths: poly Straight line segments connect the points smooth A smooth (curved) line connects the points The line of a path has a ->texture and a ->pen (thickness). The first and last point of the path may be connected (->closed) and the interior of the path may be filled with an image object using ->fill_pattern. Class path is a subclass of class joint and therefore may have ->arrows attached. Paths can be used for numerous purposes: # Creating polygons Paths are commonly subclassed to create triangles or other polygons not provided by XPCE. # Drawing diagrams (chart, graph, curve) ->kind: smooth may be used for simple smoothing of the diagram, while ->mark may be used to mark the `control-points'. # Defining irregular regions.nnnnsNM.path.G.segmentOI0xNM.path.G.segmentRIOI1x>êé€NsegmentnOI2xjReturn member point that is the start of a line-segment nearest to the indicated position or event <-position. May be used to interactively ->insert new points: send(Path, click_gesture(left, '', single, message(@receiver, insert, ?(@event, position, @receiver?device), ?(@receiver, segment, @event)))). See also <-point.nnnnnsNM.path.S.geometryOI3xNM.path.S.geometryRIOI4x+' NgeometrynOI5xgMoves and resizes the path to fit the requested bounding-box. Paths may also be resized using ->resize.nnnnnsNM.path.S.relative_moveOI6xNM.path.S.relative_moveRIOI7x=ê=_N relative_movenOI8xÄMove the graphical relative to its current position using the X- and Y-values of point. How defines how the path is moved: by adusting its <-offset (default) or by adjusting each of the <-points.nnnnnsNM.path.S.set_pointOI9xNM.path.S.set_pointRIOI:x+'"bN set_pointnOI;xeMove a member point. The arguments are the X- and Y-coordinates in the <-device's coordinate system.nnnnnsNV.path.intervalsOIxPThe number of interpolation-points between each two successive specified points.nnOI?xResource defined (10).sNM.path.G.pointOI@xNM.path.G.pointRIOIAx<ÕIƒNpointnOIBxãReturn (member) point object that is closest to the given position and within the specified maximum distance (default 10 pixels). When an event is passed, this is translated into the position of the event. See also <-segment.nnOICx&Fails silently if no such point exist.OIDx2The default maximum distance (2nd argument) is 10.nsN V.path.offsetOIExN V.path.offsetRIOIFx=ê<ºNoffsetnOIGx–Offset to origin. This offset is added to the location of the <-points of the path if the path is painted. See also ->reference and ->relative_move.nnnsN M.path.G.endOIHxN M.path.G.endRIOIIx>êçœNendnOIJx[Position (in <-device coordinate system) of the last point of the path. See also <-start.OIKxIENM.path.G.startXnnnnsN V.path.markOILxN V.path.markRIOIMx+'¬NmarknOINxpWhen not @nil, each point of the path is marked using this image. Note that interpolation-points are not marked.nnOIOx@nilsNM.path.S.deleteOIPxNM.path.S.deleteRIOIQx+'-NdeletenOIRxODelete a point from the path. To delete points interactively, see also <-point.nnnnnsN V.path.closedOISxN V.path.closedRIOITx({°NclosednOIUx0If @on, the first and last points are connected.nnOIVx@offXaCnumber O IWxx