Move an object and/or exact object position

I would like to move an object at 30.5 cm (or 305 mm) distance but the object is been move by 30.4 (304 mm) or, sometimes, by 30.6 cm. Why?

The same happens with the duplicate function.

What I’m doing wrong?

You never told what you were doing, in the first place. Did you use mouse? keyboard arrow buttons? dialog? Which? Which values you entered where? How did you measure the resulting difference?

Dear mikekaganski,

Thank you for your quick reply. Usually I move an object by changing figures in Position and Size dialog (F4).
There I manually add the distance i would like the object to be moved to the figure which is in position (let’s say on X axis) and I press enter. The object is moved to the new position, I select it again and press F4 and I notice that the new position is not the one I entered but one ±0,1 cm (or 1mm) close to the entered one.
The same with duplication, I put the distance 30.5 cm (or 305 mm) in the relative dialog (the one with Shift+F3), I press enter, a new object has been created, I check it’s position (with F4) and the position of the new object is not 30.5 cm beside the initial one, but 30.4 cm.
Is that clear?
Thanx again!

What is the size of the page where you move?
Is there a unit scaling used in your Draw document?

Hello, excuse me for my late response, I was out of office !

The size of the page is normal A2 (420 * 594 mm), the unit is centimeter(s) but also with millimeter(s) behave the same way, and the drawing scale is 1:200 (which is sth to focus as such I entered such a scale, there wasn’t included in the relative dropdown menu. But I would like to fit a building plan of ware house 110 m long to an A3 paper).

Thank you again for the willing to help!!

This explains.
Since you use this scale, every millimeter that you enter in your drawing, translates to 1/200 of a millimeter of the actual document coordinate space. As @vib explained, 1/100th of a millimeter is a unit used in the LibreOffice Draw internally; and we use integers of the unit. So anything smaller can’t be represented in LibreOffice at all.

As an unsolicited opinion from someone with constructions design background (I used to work as a heating piping systems engineer), and also from someone who is a LibreOffice developer (I am a full-time developer at Collabora Productivity, focusing on LibreOffice/Collabora Office), I can only suggest using dedicated tools designed for exactly this - like AutoCad or its likes.

Dear mikekagaski,

Actually you helped me a lot, THANK YOU,

The drawing scale was the reason for the inaccuracies, I made a new plan with A0 paper size and 1:100 drawing scale and everything runs fine!!!

Dear mikekagaski,

As you mentioned that you are a Libreoffice developer (thank you also for that!) let me comment that it would be useful to Libredraw users the option(s) of bigger, than 1:100 drawing scales, especially for those who would like to use the softeare for big areas like big warehouses, factories, ports, parking areas, sites etc.

The 1:1000 option in the relative dropdown menu, even the 1:10000 one, would be appreciated!

Draw is not intended for complex drawings like you describe. It is at its best with connected diagrams. Let’s keep the application simple and efficient.
If you need to address civil engineering, look for dedicated apps. There are many of them targeting specific domains. You’ll find them both in the commercial market and in the FLOSS world. I’d suggest you experiment with the latter ones before opting for one of the former. For my private needs, I use FreeCAD which has an “Architecture” module.

1 Like

Dear ajlittoz,

Thank you for your kind and prompt reply. I agree that LD is a nice, simple and efficient app, that’s why I’m using it myself.
I can understand that full “architecture” capabilities would be very a complex task, far beyond of sth I would expect from a freeware app, I just thought that it would be quite easy/simple to increase scaling capabilities.

It was tdf#66470 where the control was added to the status bar. I disagree that adding those factors that you suggest is a good idea. As you saw yourself, greater values introduce impossible-to-avoid inaccuracies, and they are needed by few (based on the intended use of the software). But indeed, the list could enjoy some “more…” item, to open the respective dialog directly. Feel free to file an enhancement request if you want something (it was off-topic here).

It is entirely within the scope of FreeCAD is designed for tasks like that. Other possibilities are Blender which also has quite a steep learning curve but is extraordinarily capable and is used in professional environments, and Inkscape which is a dedicated 2D drawing program.

LibreOffice is an office suite with a drawing program added on which is suitable for general office diagrams. Like all software, you have to choose the correct tool for the job in hand, whether commercial or open source.

LibreOffice uses 1/100mm for most of its measuements under the hood.
In OOO Development Tools (OooDev) I created a units module for working with the different units and specifically the UnitConver class.

I did considerable testing on units and what I found is under the hood LibreOffice will make minor adjustments and rounding to different kinds of measurements. In my experience the way LibreOffice does this changes in small ways depending on what methods are being called under the hood.

Sorry, does not give a solution but it does answer why 30.5 shifts.

Note that it is not strictly correct.
1/100 mm is the ~universal measurement used in UNO. However, unexpectedly, the two most used components - Writer and Calc - use twips (1/1440 in) internally (yes I know that the question is tagged draw, so the “1/100 mm used internally” applies here). That implies that there is additional conversion every time one uses UNO in the components using twips … just nitpicking :slight_smile:

Note that both 1/100mm and twips would not introduce inaccuracies that would explain 1/2 mm (let alone 1 mm) difference… so something else is at play here.

1 Like