Lines Matching defs:piece

485     pts.push_back(path_lineto(polyline_forced, pts[n - 1].p, pts[n - 1].piece, pts[n - 1].t));
511 * \param piece Index of a one of our commands.
512 * \param at Distance along the segment that corresponds to `piece' (0 <= at <= 1)
513 * \param pos Filled in with the point at `at' on `piece'.
516 void Path::PointAt(int piece, double at, Geom::Point &pos)
518 if (piece < 0 || piece >= int(descr_cmd.size())) {
519 // this shouldn't happen: the piece we are asked for doesn't
525 PathDescr const *theD = descr_cmd[piece];
533 return PointAt (piece + 1, 0.0, pos);
537 return PointAt (piece - 1, 1.0, pos);
542 TangentOnSegAt(at, PrevPoint (piece - 1), *nData, pos, tgt, len);
547 TangentOnArcAt(at,PrevPoint (piece - 1), *nData, pos, tgt, len, rad);
552 TangentOnCubAt(at, PrevPoint (piece - 1), *nData, false, pos, tgt, len, rad);
556 int bez_st = piece;
566 return PointAt(piece - 1, 1.0, pos);
570 if ( piece > bez_st + stB->nb ) {
573 return PointAt(piece - 1, 1.0, pos);
576 int k = piece - bez_st;
606 void Path::PointAndTangentAt(int piece, double at, Geom::Point &pos, Geom::Point &tgt)
608 if (piece < 0 || piece >= int(descr_cmd.size())) {
609 // this shouldn't happen: the piece we are asked for doesn't exist in the path
614 PathDescr const *theD = descr_cmd[piece];
620 return PointAndTangentAt(piece + 1, 0.0, pos, tgt);
624 int cp = piece - 1;
631 TangentOnSegAt(at, PrevPoint (piece - 1), dst, pos, tgt, len);
636 return PointAndTangentAt(piece - 1, 1.0, pos,tgt);
641 TangentOnSegAt(at, PrevPoint (piece - 1), *nData, pos, tgt, len);
646 TangentOnArcAt (at,PrevPoint (piece - 1), *nData, pos, tgt, len, rad);
651 TangentOnCubAt (at, PrevPoint (piece - 1), *nData, false, pos, tgt, len, rad);
654 int bez_st = piece;
661 return PointAndTangentAt(piece - 1, 1.0, pos, tgt);
667 if ( piece > bez_st + stB->nb ) {
668 return PointAndTangentAt(piece - 1, 1.0, pos, tgt);
673 int k = piece - bez_st;
920 // Find out if the segment that corresponds to 'piece' is a straight line
921 bool Path::IsLineSegment(int piece)
923 if (piece < 0 || piece >= int(descr_cmd.size())) {
927 PathDescr const *theD = descr_cmd[piece];