QCAD Bugtracker

QCAD - 2D CAD System.

Click here for a documentation of the DokuWiki formatting syntax that can be used in reports

Please search for existing tasks (also closed ones) before opening a new task.

Please make sure that you are using the latest Version of QCAD before posting a bug (menu Help > Check for Updates)

IDCategoryTask TypeSeverity  descSummaryStatusProgress
 178 QCAD (main)Bug ReportMedium add layer from property editor got uncaught exception Closed
100%
Task Description
  1. new drawing
  2. draw line
  3. select it
  4. choose “+” in property editor to add a new layer → the layer dialog pops up
  5. press cancel
  6. move the mouse back into the drawing area
'layer'
 175 QCAD (main)Bug ReportMedium Trim.js: uncaught exception for ellipse / ellipse arcs Closed
100%
Task Description
  1. draw line as limiting entity
  2. draw ellipse and ellipse arc, both intersecting
  3. modify → trim
  4. select the diagonal line as limiting entity
  5. move around with the mouse over ellipse or ellipse arc → crash
Uncaught exception at scripts/Modify/Trim/Trim.js:267: TypeError: Result of expression
'trimmed1.trimStartPoint' [undefined] is not a function.
267	        trimmed1.trimStartPoint(is);
qsdb> .backtrace
#0  <anonymous>(op = RMixedOperation(0xc37b998), limitingEntity = RLineEntityPointer(0xc20c098),
limitingShape = RLine(RShape(address: "0xc217bd8"), startPoint: RVector(40, 36, 0) ,
endPoint:  RVector(-3, -3, 0) ) , limitingPos = RVector(2.81463, 1.47073, 0) ,
trimEntity = REllipseEntityPointer(0xc3775f8), trimPos = RVector(12.4488, 5.03537, 0) ,
trimBoth = false, preview = true) at scripts/Modify/Trim/Trim.js:267
#1  <anonymous>(preview = true) at scripts/Modify/Trim/Trim.js:167
#2  <anonymous>() at /home/martin/workspace/rsframework/scripts/Modify/../EAction.js:1150
#3  <anonymous>(event = REntityPickEvent(0xbfffd3c8), preview = true) at scripts/Modify/Trim/Trim.js:147
#4  <anonymous>(event = REntityPickEvent(0xbfffd3c8)) at /home/martin/workspace/rsframework/scripts/Modify/../EAction.js:1225
#5  <global>() at -1
 172 QCAD (main)Feature RequestMedium send to back / to front Closed
100%
Task Description

implement

 171 QCAD (main)Bug ReportMedium arc split wrong Closed
100%
Task Description
  • see attachment
 170 QCAD (main)Bug ReportMedium wrong scaling for ellipses / ellipse arcs Closed
100%
Task Description
  • see attachment
  • factor x/y: 0.5
  • green: original entities
  • red: properly scaled entities
 160 ECMAScriptBug ReportMedium SplitIntoEqualParts.js: Uncaught exception Closed
100%
Task Description
 
Uncaught exception at scripts/Modify/SplitIntoEqualParts/SplitIntoEqualParts.js:174: Error: :-1:-1: REntity: Argument 0 is not of type REntity *REntity *.
<native>(RLineEntityPointer(0xb73b4c8)) at -1
<anonymous>(op = RAddObjectsOperation(0xb733790), argLine = RLineEntityPointer(0xb73b4c8)) at scripts/Modify/SplitIntoEqualParts/SplitIntoEqualParts.js:174
<anonymous>(op = RAddObjectsOperation(0xb733790)) at scripts/Modify/SplitIntoEqualParts/SplitIntoEqualParts.js:111
<anonymous>(true) at scripts/Modify/SplitIntoEqualParts/SplitIntoEqualParts.js:95
<anonymous>() at /home/martin/workspace/rsframework/scripts/Modify/../EAction.js:1150
<anonymous>() at scripts/Modify/SplitIntoEqualParts/SplitIntoEqualParts.js:73
<global>() at -1
174	        line.copyAttributesFrom(argLine);

qsdb> argLine
RLineEntityPointer(0xb73b4c8)
 158 QCAD (main)Bug ReportMedium polyline with segment radius mirrored wrong Closed
100%
Task Description
  • see attached drawing
 157 QCAD (main)Bug ReportMedium rotate causes uncaught exception Closed
100%
Task Description
  1. draw line
  2. Modify → Rotate
    • center point: line end point
    • delete original
    • angle 90°
Uncaught exception at scripts/Modify/Rotate/Rotate.js:117: Error: :-1:-1: Wrong number/types of arguments
for RDocumentInterface.applyOperation().
<native>(undefined) at -1
<anonymous>(event = RCoordinateEvent(0xbfffd478), preview = false) at scripts/Modify/Rotate/Rotate.js:117
<anonymous>(event = RCoordinateEvent(0xbfffd478)) at
/home/martin/workspace/rsframework/scripts/Modify/../EAction.js:1197
<global>() at -1
117	                di.applyOperation(this.getOperation(false));
 156 QCAD (main)Bug ReportMedium Isometric Projection fails for arc Closed
100%
Task Description
'shape.approximateWithLines'"0xc436c88"
 148 QCAD (main)Bug ReportMedium "inline" leads to linking error on Linux Closed
100%
Task Description

RPainterPath.h

    inline bool isEmpty() const;
g++ -rdynamic -Wl,-rpath,/home/martin/opt/QtSDK/Desktop/Qt/473/gcc/lib
-o ../../debug/qcad-bin debug/main.o
   -L/home/martin/opt/QtSDK/Desktop/Qt/473/gcc/lib
-L/usr/X11R6/lib -L/home/martin/workspace/rsframework/debug
-L/home/martin/workspace/rsframework/debug/opendesign
 -lecma -lecmaapi -ldwg -lpluginsqt -lgui -lentity -loperations -lspatialindexnavel
 -lgrid -lsnap -lcore -lstemmer -lmath -lrxslt -lrxml -ldxf -lModelerGeometry
 -lTD_BrepRenderer -lTD_Br -lTD_AcisBuilder -lTD_Db -lTD_DbRoot -lTD_Gs
 -lTD_SpatialIndex -lTD_Gi -lTD_Ge -lTD_Root -lFreeType -lTD_Alloc -lRecomputeDimBlock
 -lExFieldEvaluator -lQtWebKit -lQtScript -lQtScriptTools -lQtSvg -lQtSql -lQtXmlPatterns
 -lQtXml -lQtOpenGL -lQtGui -lQtNetwork -lQtCore -lGLU -lGL -lpthread 
/home/martin/workspace/rsframework/debug/libecmaapi.a(REcmaPainterPath.o): In function `REcmaPainterPath::isEmpty(QScriptContext*, QScriptEngine*)':
/home/martin/workspace/rsframework/src/scripting/ecmaapi/REcmaPainterPath.cpp:2078: undefined reference to `RPainterPath::isEmpty() const'
/home/martin/workspace/rsframework/debug/libgui.a(RGraphicsSceneQt.o): In function `RGraphicsSceneQt::endPath()':
/home/martin/workspace/rsframework/src/gui/RGraphicsSceneQt.cpp:71: undefined reference to `RPainterPath::isEmpty() const'
/home/martin/workspace/rsframework/src/gui/RGraphicsSceneQt.cpp:74: undefined reference to `RPainterPath::isEmpty() const'
/home/martin/workspace/rsframework/debug/libentity.a(RHatchData.o): In function `RHatchData::getBoundingBox() const':
/home/martin/workspace/rsframework/src/entity/RHatchData.cpp:104: undefined reference to `RPainterPath::isEmpty() const'
/home/martin/workspace/rsframework/debug/libentity.a(RHatchData.o): In function `RHatchData::getDistanceTo(RVector const&, bool, double, bool) const':
/home/martin/workspace/rsframework/src/entity/RHatchData.cpp:127: undefined reference to `RPainterPath::isEmpty() const'
/home/martin/workspace/rsframework/debug/libentity.a(RHatchData.o):/home/martin/workspace/rsframework/src/entity/RHatchData.cpp:134: more undefined references to `RPainterPath::isEmpty() const' follow
collect2: ld returned 1 exit status

temporary solution: changed method to non-line

 144 QCAD (main)Bug ReportMedium snap restriction buttons are not toggled Closed
100%
Task Description

the buttons works, but are not toggled (”restriction off” is always pushed)

 87 QCAD (main)Bug ReportMedium Advanced Selection hits 'debugger' statement Closed
100%
Task Description

Advanced selection dialog hits a debugger statement on line 1088.

  1. Selection- Advanced Selection
  2. Change first combo box to “Any”
 77 QCAD (main)Bug ReportMedium Linux: Printing crashes Closed
100%
Task Description

Printing segfaults under Linux after the printer dialog is shown.

 73 QCAD (main)Bug ReportMedium Uncaught exception: "cannot access member of deleted QO ...Closed
100%
Task Description

occurs sporadically, often when the application or a MDI child is closed, usually not reproducible.

  • 2011-05-11 15.19:32 unsaved drawing, after choosing “no” at the confirmation dialog
Uncaught exception at /home/martin/workspace/rsframework/scripts/Tools/PainterPathViewer/../../library.js:50:
Error: cannot access member `isNull' of deleted QObject
50	            (typeof(obj.isNull)=="function" && obj.isNull()===true));
 68 QCAD (main)Bug ReportMedium insert from library browser crashes Closed
100%
Task Description
  1. new file
  2. insert (drag-n-drop or insert button) from library browser → segfault
Thread [1] 12403 (Suspended : Signal : SIGSEGV:Segmentation fault)	
	RObject::getId() at RObject.h:92 0x8a11c82	
	RClipboardOperation::copy() at RClipboardOperation.cpp:66 0x8d4892a	
	RPasteOperation::apply() at RPasteOperation.cpp:30 0x8d4841a	
	RDocumentInterface::previewOperation() at RDocumentInterface.cpp:1,766 0x8de19bb	
	REcmaDocumentInterface::previewOperation() at REcmaDocumentInterface.cpp:4,711 0x889aaad	
	0xb6bd813c	
	0xb6ac1f68	
	0xb6a9164c	
	0xa83ced9f	
	0xb6a423e3	
	<...more frames...>	
 61 DocumentationBug ReportMedium QCAD 3 Manual Closed
100%
Task Description

Change the user manual directory / file names from ‘simpletextviewer’ to
‘qcad_user_manual’ and adjust the sources accordingly that the manual can be shown
in the help menu.

We can simply drop the contents of the manual that is checked in and replace
it with a simple note “No manual is available yet for this technology preview of QCAD 3”

 45 QCAD (main)Bug ReportMedium Hatch Polyline Closed
100%
Task Description
  1. open the attached drawing
  2. select the polyline
  3. fill it with hatch pattern “stars” → looks ok, the whole area is filled
  4. save the file
  5. re-open it
  6. there is a gap in the filling now, see attached screen shot
 43 QCAD (main)Bug ReportMedium Hatch ellipse Closed
100%
Task Description

cannot hatch single full ellipse

 41 QCAD (main)Bug ReportMedium dimensions: tolerance shown twice after block insert Closed
100%
Task Description
  • File “ExampleDrawings/data/dim_aligned.dwg”:
    • upper limit: 0.01, lower limit 0.02 → correctly shown
  • choose “Generate Example Drawings” → the element “aligned dimension” (with limits set) shows 0.010.01 now, since both label and tolerance limits are set (according to the property editor):
    • label: <>\S0.01^0.02;
    • upper limit: 0.01
  • same for lower limit
  • “Generate Example Drawings” inserts the drawings as blocks
 40 QCAD (main)Bug ReportMedium saving spline CP, 2deg, closed hits assert Closed
100%
Task Description
  1. new file
  2. draw spline CP, 2deg, closed
  3. save → crash
Debug:    "RDwgServices::printErrorStackTrace: General modeling failure" 
Warning:  RDwgExporter::exportEntity: Exception occured. Entity NOT saved: 
 RSplineEntity(REntity(RObject(id: 23, document: "0xb246720", address: "0xb915f00", undone: 0), type: 23, layerId: 21, blockId: 22, lineweight: -1, linetypeId: 0, color: RColor(ByLayer) , drawOrder:  0 , selectionStatus:  false ) 
controlPoints (6): 0: RVector(14, 21, 0) 1: RVector(41, 25, 0) 2: RVector(41, 9, 0) 3: RVector(28, 4, 0) 4: RVector(14, 21, 0) 5: RVector(41, 25, 0) 
fitPoints (0): 
knots (7): 0: -1, 1: 0, 2: 1, 3: 2, 4: 3, 5: 4, 6: 5, )
Fatal:    ASSERT: "false" in file RDwgExporter.cpp, line 1234
Thread [1] 2066 (Suspended : Signal : SIGABRT:Aborted)	
	__kernel_vsyscall() at 0xffffe424	
	raise() at 0xb4f037ff	
	abort() at 0xb4f05140	
	RMainWindow::messageHandler() at RMainWindow.cpp:63 0x8e025a6	
	qt_message_output() at 0xb5357f65	
	0xb53581ab	
	qFatal() at 0xb53582c9	
	qt_assert() at 0xb5358355	
	RDwgExporter::exportEntity() at RDwgExporter.cpp:1,234 0x8cb754f	
	RExporter::exportEntities() at RExporter.cpp:408 0x8de5c96	
	<...more frames...>	
 37 QCAD (main)Feature RequestMedium Generate Example Drawings Closed
100%
Task Description
  • a script would be great actually. then we can generate different drawings with different units / scales / paper settings
  • OdWriteEx from OpenDesign creates something similar: a bunch of rectangles, each with a text label and an entity inside, e.g. “Aligned Dimension” and below a rectangle with an aligned dimension inside
  • the example drawings should contain:
    • an instance of every supported entity type (line, arc, circle, all dimensions, block insert, text, hatch, solid fill, ...)
    • lines in all available widths
    • lines in all available types
    • lines in all available (fixed) colors and some custom colors
  • script should be able to generate example drawings for different:
    • units
    • drawing scales
    • paper sizes
    • paper settings (background color, multi page settings, etc.)
 31 QCAD (main)Bug ReportMedium Snap Coordinate / option toolbar: uncaught exception Closed
100%
Task Description
  • draw → line → snap coordinate
  • draw → line → snap polar coordinate
'setButton'"Set"

problem: the option tool bar isn’t show at all

 25 QCAD (main)Feature RequestMedium Autosave Closed
100%
Task Description

Autosave

Make interval configurable
Enable / disable
Path (?)

 20 QCAD (main)Bug ReportMedium Changing drawing unit makes QCAD hangs Closed
100%
Task Description

Changing the unit of a drawing can make QCAD hangs

  • Mile: QCAD hangs in endless loop
  • Nanometer, Microinch: view turns white, at some levels of zoom, it turns gray
  • Foot, Yard: GraphicsView grid too small meshed
 14 QCAD (main)Feature RequestMedium File: Print Preview Closed
100%
Task Description

Open

  • re-enable auto fit
  • re-enable center

Postponed

  • option to not print empty pages

Done

  • PDF export
  • scale factor
  • position
  • paper size
  • paper orientation
  • toggle portrait / landscape in toolbar
  • choose paper format in toolbar
  • multiple pages with margin and stitch marks
  • zoom to all pages
  • color mode (color, gray scale, black white)
  • scale combo box in drawing preferences empty
 8 QCAD (main)Bug ReportMedium Text Dialog: custom text height broken Closed
100%
Task Description

Custom text height cannot be set (enter closes the dialog, tab does not activate the entered text height)

 6 QCAD (main)Performance IssueMedium Auto snap near splines Closed
100%
Task Description

Move cursor near spline, e.g. when drawing line with auto snap active.

 5 QCAD (main)Bug ReportMedium print preview: paper disappears on focus out / in Closed
100%
Task Description

when changing the window focus, the paper in the print preview disappears and doesn’t come back anymore

 4 BookBug ReportMedium Book "CAD Instruction" layout issues Closed
100%
1 Task Description

Post all kind of layout issues for the book “CAD Instruction” here, e.g. overlapping text.

 1809 QCAD (main)Bug ReportLow Draw > Viewport > Add Viewport: layout dialog combobox  ...Closed
100%
Task Description

Drawing with more than 4 Layout Blocks (Layout1, Layout2 etc),

Add Viewport, choose rectangle for viewport, Dialog pops up to choose a Layout Block,
I choose Layout4 - the Viewport is placed on Layout2,

next new Viewport - placed on Layout3 - the Viewport will be placed again on Layout2 ...

 1808 QCAD (main)Bug ReportLow Property Editor: Changing width, height, orientation fo ...Closed
100%
Task Description

Property Editor / Size adjustment for Polygon rectangle accepts no changes for Width and Height. Was perfect working till 3.21.2

 1807 QCAD (main)Bug ReportLow The ORDINAL 3906 not found in LIBEAY32.DLL Closed
100%
Task Description

Hello
the message: The ORDINAL 3906 was not found in the LIBEAY32.dll dynamic-link library. is displayed each time QCAD is opened.
How to fix this problem
thanks in advance
cordially**

 1805 QCAD (main)Bug ReportLow Modify > Split Entities: broken for logically closed po ...Closed
100%
Task Description

See http://www.qcad.org/rsforum/viewtopic.php?f=31&t=5825&p=21761

 1803 QCAD/CAMBug ReportLow CAM configuration output unit fixed in inch instead of  ...Closed
100%
1 Task Description

Ij window CAM Configuration output unit appears as inch instead of mm. All parameters are in option
when create a nc file,units are in inches not in mm. unsuable and not possible to change

 1802 QCAD (main)Bug ReportLow Startpoint indication disapears for some entities while ...Closed
100%
Task Description

Having a multi selection and at least one ‘older’ arc the startpoint indication in red of some entities might disappear.

Entities that suffer from this are:
Other arcs
Polyline
Splines

Only the ‘oldest’ arc in selection will have a startpoit indication.
Multi selection of ‘newer’ entities from the list above will not if an ‘older’ arc is part of the selection.
Deselecting de ‘older’ arcs will reveal the startpoints up to the ‘oldest’ arc.

In the file provided entities where drew in order from left to right.
Select all and start deseleting arcs from the left.

The behaviour is affected by changing the draw order property and a save/close/open.
In the second file the rightmost arc was set to draw order 7, the same as the 4th was.
After save/close/open it is renumbered to 8 and the behaviour is different as in the firts file.

Regards

1801QCAD (main)Performance IssueLowlow perfomance in paper space and viewportsAssigned
0%
Task Description

Improving the performance of the exceptional use of the processors when switching from the model to the paper space (testing with the attached file) the functionalities of the commands for the viewports are too low in the paper space.

 1800 QCAD (main)Bug ReportLow circle/arc intersection bug with line Closed
100%
Task Description

There is a case that qcad do not detect intersection between a circle/arc and a line. Attached is an example.

 1797 QCAD (main)Bug ReportLow Keyboard shortcuts not saved between sessions Closed
100%
Task Description

In 3.21.1, and 3.21.2 a change to a shortcut looses all previous shortcut changes.
This does not become apparent in the current session; a modified shortcut works fine together with all the previous modifications, until you close QCAD.
But-
When you re-open QCAD, the only customised shortcut available is the last one that was changed, every other customised keyboard shortcut has gone back to default.

Windows 10 64 , Gigabyte laptop i7 processor

 1796 QCAD (main)Bug ReportLow File > Open Recent: crash when file is in Google Drive  ...Closed
100%
Task Description

When a file is opened from “File→Open Recent” on QCad Pro it gives a 100% repeatable crash if the file is on a folder synchronized with Google Drive. If the file is opened using “File→Open” instead it works as expected. See attached crash-log.

OSX specific. Does not happen on Linux with synchronized Google Drive folder

System: OSX 10.13.6

QCad version:

Version: 3.21.2.0 (3.21.2)
Build Date: Jul 9 2018
Revision: f9cea14
Qt Version: 5.10.0
Architecture: x86_64
Compiler: Clang 8.0.0

 1794 QCAD (main)Bug ReportLow Detect Duplicates / Options / Refresh Icon missing Closed
100%
Task Description

Please see also http://www.qcad.org/rsforum/viewtopic.php?f=32&t=5745

 1793 QCAD (main)Bug ReportLow Ruler functionality is compromised by Auto Grid setting Closed
100%
1 Task Description

Regarding to an observation by the forum member Horst1803
http://www.qcad.org/rsforum/viewtopic.php?f=92&t=5725

The ruler functionality is compromised by Graphics View / Grid settings.
To show the full Ruler functionality “Automatic scale grid” has to be activated. I think that is not intended behavior.

Case: Appearance / Show rulers = activated

Application Preferences / Graphics View / Grid

on - Automatically scale grid
on - Automatically scale meta grid
off - Solid grid lines
= Rulers visible
= Graduation visible
= Labels visible

off - Automatically scale grid
on - Automatically scale meta grid
off - Solid grid lines
= Rulers visible
= Graduation invisible
= Labels invisible

 1792 QCAD (main)Bug ReportLow Dimension > Angular: transformations broken Closed
100%
2 Task Description

(I originally described the problem in the forum: https://qcad.org/rsforum/viewtopic.php?f=33&t=5721 )
(The problem was also reproduced by user “Husky” so it not installation specific.)

I have a model where one of the details is as shown in attachment 1

However, when I create a viewport and display the part in the the layout the angular measurement is another. See attachment 2.

In the model it should be noted that the part displayed is a detail copied with a different scale as to Zoom in on a detail in order to put dimensions on it. It was created by copying a part of the model and pasting it back in the model but with 3x zoom.

I have also included the full .dxf file in the hope that it helps you both reproduce and fix this issue

Note: The same problem seems to also produce “ghostlines” in other viewports in the layout which is not present in the model. Removing the angular measurement also removed the ghostline. You can observe the issue by looking at layout2 and you can see a line (dimension layer) going from top right corner of the viewport towards the lower left. This line is not present in the model and appears to be some strange extension to the angular dimension the detail that is just to the top right in the model.

System:
Macbook Pro 15”, OS X 10.13.6

(Can also be reproduced in Linux version)

QCad version:

Version: 3.21.2.0 (3.21.2)
Build Date: Jul 9 2018
Revision: f9cea14
Qt Version: 5.10.0
Architecture: x86_64
Compiler: Clang 8.0.0

 1791 QCAD (main)Bug ReportLow Edit > Paste: relative zero point not set Closed
100%
Task Description

If I insert a content from the Clipboard to the drawing a new Relative Zero Point isn’t created.
I’m not able to use e.g. a restriction regarding to the last inserted content. QCAD will use the last Relative Zero Point in the drawing even if I already inserted a content.

Screenshot:
Clipboard content = circle

1. First insert

Restriction horizontal

2. Second insert

 1790 QCAD (main)Bug ReportLow Info fuction returns right dimensions but drawing dimen ...Closed
100%
Task Description

no task description

1789QCAD (main)SuggestionLowApplication Preferences / General / Performance :0Assigned
0%
1 Task Description

Hi Andrew,

we know that you need to have always software performance in your mind to decide which features / tools can / should be implemented and on which way.

I really appreciate your effort to find the best middle way between software features and performance but I think also it’s a tough call to appraise worldwide the overall customer equipment to make the software workable to the best for everybody. That isn’t possible without compromise.

Maybe it would make sense to think about a new dialog in the “Application Preferences” to let the user decide what kind of feature are absolutely needed regarding to his/her work-task / equipment. I don’t mean that you need to cover every single thing but the main “performance jeopardy’s” should be covered with an on/off switch.

Yes I know - that isn’t done in 5 minutes but I think that can make your life easier in the long run and will cover even more customer.

Just my two cents. ;)

 1787 QCAD (main)Bug ReportLow View > Property Editor: Layer combo box not sorted Closed
100%
Task Description

Layer combo box in the property editor is not sorted.

See also:
https://www.qcad.org/rsforum/viewtopic.php?f=89&t=5714

 1786 QCAD (main)Bug ReportLow Block > Select Block References: not using active block ...Closed
100%
Task Description

... can’t find Block References if the Block which contains the Block References (Attributes) isn’t selected prior with the mouse.

The Selection Filter will find the Block References regardless which block is chosen in the Block List.

 1785 QCAD (main)Bug ReportLow Template / Viewport scale issue Closed
100%
Task Description

Given: Template with prepared Paper Space Frame/Titleblock scale = 1:1.
Drawing 1:1
First Viewport / scale 1:1 / inserted in Paper Space = everything fine,
Second Viewport / scale 0.02 will scale the Paper respective to the new Viewport scale but the Frame/Titleblock isn’t scaled.

 1784 QCAD (main)Bug ReportLow View > Property Editor: Block attribute labels with int ...Closed
100%
Task Description

Bei der Eingabe von Blockattributen im Eigenschaften Editor werden die deutschen Sonderzeichen nicht richtig wiedergegeben.

When entering block attributes in the Properties Editor, the German special characters are not displayed correctly.

 1783 QCAD (main)Bug ReportLow RArc::splitAt(): fails in some cases Closed
100%
Task Description

RArc::splitAt() works wrong in some cases.
To reproduce execute this script:

            var arc = new RArc(new RVector(0, 0), 100, Math.PI*2, Math.PI/2, true);
            var points = [];
            points.push(arc.getPointAtPercent(1/3));
            var arcs = arc.splitAt(points);
            if (arcs.length == 2) {
                qDebug("OK, arcs count:", arcs.length);
            } else {
                qDebug("FAILED, arcs count:", arcs.length);
            }

            arc.mirror(new RLine(0, 0, 0, 100));

            points = [];
            points.push(arc.getPointAtPercent(1/3));
            arcs = arc.splitAt(points);
            if (arcs.length == 2) {
                qDebug("OK, arcs count:", arcs.length);
            } else {
                qDebug("FAILED, arcs count:", arcs.length);
            }

The first case split in two arcs, but the second splits in one arc only.

I think the reason is the code in RArc::splitAt():

        ...
        if (RMath::getAngleDifference180(a1, a2))*radius()<0.001) {
            continue;
        }
        ...

The RMath::getAngleDifference180() return angle between -pi and pi so absolute value should be used.

Showing tasks 201 - 250 of 1809 Page 5 of 37<<First - 3 - 4 - 5 - 6 - 7 - Last >>

Available keyboard shortcuts

Tasklist

Task Details

Task Editing