PCE version 4C man_modulenamespaceid_tablemodified current_idOIxN class/lineN referenceC hash_tablerefersizeOIxNbothIsN M.line.S.endCman_method_card identifiermodule last_modifiednamesummary descriptionsee_alsoinherit diagnosticsdefaultsbugsOIxN M.line.S.endRICdateOIx*ÆüÂNendnnCchainsizeOIxIENM.line.S.pointsXOIxIEN M.line.G.endXnnnsNM.line.S.first_arrowOIxNM.line.S.first_arrowRIOIx(qêºN first_arrownnOI xIeNV.line.first_arrowEN$class/arrow$C.arrowXnnnnsNM.line.S.end_yOI xNM.line.S.end_yRIOI x*ÆüÐNend_ynnOI xIENM.line.S.pointsXOI xIENM.line.G.end_xXnnnsNM.line.S.orientationOIxNM.line.S.orientationRIOIx,DdµN orientationnnOIxIENM.line.S.normaliseXOIxIENM.line.S.normaliseXnnnsNM.line.S.start_xOIxNM.line.S.start_xRIOIx*ÆüÖNstart_xnnOIxIENM.line.S.pointsXOIxIENM.line.G.start_xXnnnsNV.line.first_arrowCman_variable_card identifiermodule last_modifiednamesummary descriptionsee_alsoinheritdefaultsOIxNV.line.first_arrowRIOIx({ÏN first_arrownCstringOIx#Arrow displayed on the start-point.OIxIeNM.line.S.first_arrowENM.line.S.arrowsXnnsNM.line.S.pointsOIxNM.line.S.pointsRIOIx*Æü¸NpointsnOIx£Set ->start from the first X-Y couple and ->end from the second. Any default value leaves the corresponding line parameter unchanged. See also `graphical ->set'.OIxIeNM.line.S.start_xeNM.line.S.start_yeNM.line.S.end_yeNM.line.S.end_xeNM.line.S.startEN M.line.S.endXnnnnsNM.line.S.second_arrowOIxNM.line.S.second_arrowRIOIx(qêÁN second_arrownnOI xIeNV.line.second_arrowEN$class/arrow$C.arrowXnnnnsNM.line.S.arrowsOI!xNM.line.S.arrowsRIOI"x*ÆúôNarrowsnOI#xÞUtility method to attach arrow heads to a line object. The principal way to do this are the methods ->first_arrow and ->second_arrow. This method associates default arrow objects to either or both of the line end-points.OI$xIeNV.line.second_arroweNV.line.first_arrowEN$class/arrow$C.arrowXnnOI%x5none: both ->first_arrow and ->second_arrow are @nil.OI&xLThe standard arrow doesn't look very nice when using larger values of <-pen.sNM.line.S.start_yOI'xNM.line.S.start_yRIOI(x*ÆüÓNstart_ynnOI)xIENM.line.S.pointsXOI*xIENM.line.G.start_xXnnnsNV.line.second_arrowOI+xNV.line.second_arrowRIOI,x({êN second_arrownOI-x!Arrow displayed on the end-point.OI.xIeNM.line.S.second_arrowENM.line.S.arrowsXnnsNM.line.G.intersectionOI/xNM.line.G.intersectionRIOI0x,DeuN intersectionnOI1x€Return a new point object describing the intersection point of both infinitely extended lines. Fails if the lines are parallel.nnnnnsNM.line.G.arrowsOI2xNM.line.G.arrowsRIOI3x*ÆùãNarrowsnOI4x×Inspects <-first_arrow and <-second_arrow: <-first_arrow <-second_arrow return ========= ============ ==== @nil @nil none arrow @nil first @nil arrow second arrow arrow both See also ->arrows.nnnnnsNM.line.G.distanceOI5xNM.line.G.distanceRIOI6x<úlNdistancenOI7x·If the argument is a point object, this method computes the distance to the the infinitely extended line (if segment is @default or @off) or the line segment if segment is @on. If the argument is an event object, act as above using the position of the event in the coordinate space of the <-device. If the argument is a graphical objects, it invokes `area <-distance: area' using the areas of both graphicals. See also ->in_event_area.nnnnnsNM.line.G.startOI8xNM.line.G.startRIOI9x*Æü4NstartnnOI:xIEN M.line.G.endXOI;xIEN M.line.G.endXnnnsNM.line.S.initialiseOIxlCreate a line from X1,Y1 to X2,Y2 with specified ->arrows. A default line has ->pen: 1 and ->texture: none.nnnnnsNM.line.G.lengthOI?xNM.line.G.lengthRIOI@x5ÊôµNlengthnOIAxLDistance between the points <-start and <-end. See also `point <-distance'.nnnnnsNC.lineCman_class_card identifiermodule last_modifiednamesummary descriptionsee_alsoinherituser_interfacebugsOIBxNC.lineRIOICx0µ—ÊNlinenOIDxçDescription Straight line segment connecting two points. A line may have a ->pen (thickness) and a ->texture (dash-pattern). A line may have ->arrows on both sides, see class joint and class arrow for attaching arrows to a line.OIExIEN$class/connection$C.connectionXnnOIFxxThere are no provisions to display a label in a line. In the application-area of PCE, this would be a useful extension.sNM.line.G.angleOIGxNM.line.G.angleRIOIHx,De)NanglenOIIxRReturn the angle of the line with the positive X-axe in degrees counter clockwise.nnnnnsNM.line.S.end_xOIJxNM.line.S.end_xRIOIKx*ÆüÌNend_xnnOILxIENM.line.S.pointsXOIMxIENM.line.G.end_xXnnnsN M.line.G.endOINxN M.line.G.endRIOIOx*ÆüfNendnOIPxzUnlike normal graphicals, lines are in general not specified using their <-width and <-height but using <-start and <-end.OIQxIENM.line.G.startXnnnnsNM.line.S.normaliseOIRxNM.line.S.normaliseRIOISx,DdN normalisenOITxœSucceed without side-effect. Normalising a line could change the direction as a line is defines to go from <-x, <-y towards <-x + <-width, <-y + <-heightOIUxIENM.line.S.orientationXnnnnsN M.line.S.copyOIVxN M.line.S.copyRIOIWx*Æü NcopynOIXxŽCopy the attributes from class graphical and the arrows. This method is used by class connection to instantiate itself from the related link.nnnnnsNM.line.S.startOIYxNM.line.S.startRIOIZx*ÆüÆNstartnnOI[xIENM.line.S.pointsXOI\xIEN M.line.G.endXnnnXaCnumber O I]xx