Where I can find LFF specification (arcs) ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|

Where I can find LFF specification (arcs) ?

Borneq
Font format lff is simple and selfdocumenting, but is exception: arcs.
Fonts have:
2.39,1,A0.0935;
0.5;3.5,-3,A0.414214
3,7.5;0,7.5,A1;3,7.5,A1
0,7.5;3,7.5,A1;0,7.5,A1
How parse it?
Is any lff specification?
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz
In this page I write a basic explanation
https://github.com/Rallaz/LibreCAD/wiki/lff-definition

If you have further questions, feel free to ask or to improve the explanation page ;-)

Cheers,
Rallaz
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
This post was updated on .
It is vague "polyline bulge"; how it is in Arc form - center, radius, start and end angle?
In 0,7.5,A1 - 1 is in the same unit as 7.5 or percentage - A1 always means 180 degrees?
Very thanks for editing Wiki!
How are denoted full circles? 360 degrees -  tangent of 1/4 of the arc is tangent 90 degrees, it is infinity
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz
The use of "bulge" or curvature is the most compact form to mix lines and arcs as well as being the "more standard" in a program that uses the dxf format.
I updated the wiki with some comments about bulges.

More comments
From DXF spec:
The bulge is the tangent of one fourth the included angle for an arc segment, made negative if the arc goes clockwise from the start point to the endpoint. A bulge of 0 indicates a straight segment, and a bulge of 1 is a semicircle.

Another possible definition is the relationship between the half length of the chord (segment from start & end points) and the sagitta
sagitta = bulge * length_chord / 2

see:
http://en.wikipedia.org/wiki/Sagitta_(geometry)
http://liutaiomottola.com/formulae/sag.htm
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz
You have edited your post and he had not read all.
many people read these messages as mailing list and the editions are not sent

> A1 always means 180 degrees?
Yes

> How are denoted full circles? 360 degrees -  tangent of 1/4 of the arc is tangent 90 degrees, it is infinity
Yes, is infinite
My opinion is do not exist an arc of 360 degrees because a arc with 360 degrees is a circle and not an arc.

Circles are not supported, you can write 2 arcs with 180 dregrees.
To write a glyph with only a circle with radius 5:

[UTF8 code here]
0,5;10,5,A1;0,5,A1

What is your interest in the LFF fonts? if I may ask
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
Ten years ago I wrote commercial very fast viewer ( + tools) in Delphi for dxf and dgn. I am interested CAD and GIS. I found format lff and free vector fonts. I am planning write lff editor, first I planning write it with Qt, but with program must be distributed big library; I think write it in Java.
Worries me one think about llf fonts in LibreCad: letters in romans.lff are bigger than romanc.lff
but definitions:
# LetterSpacing:     3
# WordSpacing:       6.75
# LineSpacingFactor: 1
are identical, how about units?
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz
The units is a inheritance of QCAD. A letter with height 9 in LFF or CXF (non free) is scaled to 1 unit.
If you draw a text like "And" in LC (LibreCAD) with font ISO and text height 1 the letter "A" have 1 unit of height
and the definition is 9 units height:
[0041] A
0.8333,2.5;5.1666,2.5
0,0;3,9;6,0

The difference between romans.lff and romanc.lff is the font height, both based in hershey fonts
romans -> roman simplex
romanc -> roman condensed

If you are interested in open source you may be of interest LC:
You can edit lff fonts directly in LC
File->Open then select filter "LFF Font", all glyphs are treated as block, then save as LFF

https://github.com/LibreCAD/LibreCAD/blob/master/attf2lff/main.cpp is a ttf->lff converter

and a plugin I have write a shp importer (unfinised) using shapelib from http://www.gdal.org/
future plans are writing shp exporter and dgn import-export using GDAL libraries
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
In LibreCad llf fonts I found some parsing errors: bulge definitions ("A") without preceding comma, only one coordinate at end linestring, uniocode number with two [[ or without [
In unicode.lff
[3065] づ
C3065
6.03,8.6;6.574,7.658
6.66,9;7.21,8.065
Circular nesting, should be C3064
(this error crashed LC, now is OK)
Where I can put corrected cyrillic_ii.lff,iso.lff,italicc.lff,standard.lff and unicode.lff ?
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

dxli
Hi Borneq,

the easiest is to fork from github (if you haven't done it yet), modify the files, and send pull request back to main repository.

github fork help: http://help.github.com/fork-a-repo/
githu pull request: http://help.github.com/send-pull-requests/

Thanks,

Dongxu

On Fri, Jan 20, 2012 at 2:51 PM, Borneq [via LibreCAD] <[hidden email]> wrote:
In LibreCad llf fonts I found some parsing errors: bulge definitions ("A") without preceding comma, only one coordinate at end loinestring
In unicode.lff
[3065] づ
C3065
6.03,8.6;6.574,7.658
6.66,9;7.21,8.065
Circular nesting, should be C3064
Where I can put corrected cyrillic_ii.lff,iso.lff,italicc.lff,standard.lff and unicode.lff ?


If you reply to this email, your message will be added to the discussion below:
http://librecad.1049103.n5.nabble.com/Where-I-can-find-LFF-specification-arcs-tp5158044p5161515.html
To start a new topic under LibreCAD-dev, email [hidden email]
To unsubscribe from LibreCAD-dev, click here.
NAML



--
Dongxu Li, Ph.D.
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
This post was updated on .
I fork, but if call "git clone git@github.com:borneq/LibreCAD.git" is "Permission denied (publickey)."
I can load as a zip, but I want also send changes.
----
temporary is OK, I create keys and enter github token
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
I just pushed changes for fonts. I do not change font unicode.lff. Last version has corrected circular nesting but has mysterious statement:
After reference to nesting block, is one float number:

[0051] Q
C004f
4.

[00a5] ÂĄ
C0059
3.62
etc.
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

dxli
I feel we should apply the fixes to the stable branch also.

Dongxu

On Sat, Jan 21, 2012 at 2:40 AM, Borneq [via LibreCAD] <[hidden email]> wrote:
I just pushed changes for fonts. I do not change font unicode.lff. Last version has corrected circular nesting but has mysterious statement:
After reference to nesting block, is one float number:

[0051] Q
C004f
4.

[00a5] ÂĄ
C0059
3.62
etc.


If you reply to this email, your message will be added to the discussion below:
http://librecad.1049103.n5.nabble.com/Where-I-can-find-LFF-specification-arcs-tp5158044p5162307.html
To start a new topic under LibreCAD-dev, email [hidden email]
To unsubscribe from LibreCAD-dev, click here.
NAML



--
Dongxu Li, Ph.D.
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz
Dongxu,
 I applied the pull request from Borneq in master and 1.0.0-SNAPSHOT

Borneq,
Thanks for the patch. About unicode.lff:
This char is my fault:
[3065] づ
C3065                        ->should be C3064
6.03,8.6;6.574,7.658
6.66,9;7.21,8.065

The chars like:
[0051] Q
C004f
4.

seems a bug reducing file size, this is present only in master branch

Added a patch for both cases
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
This post was updated on .
Rallaz wrote
 I applied the pull request from Borneq in master and 1.0.0-SNAPSHOT
I am newbie in GIT. How apply changes to my fork and my local copy?
(checkout?)
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

dxli
 for local repository:
git pull

Will pull in updates from remote server 

Dongxu 



-------- Original message --------
Subject: Re: Where I can find LFF specification (arcs) ?
From: "Borneq [via LibreCAD]" <[hidden email]>
To: dxli <[hidden email]>
CC:


Rallaz wrote
 I applied the pull request from Borneq in master and 1.0.0-SNAPSHOT
I am newbie in GIT. How apply changes to my fork and my local copy?



If you reply to this email, your message will be added to the discussion below:
http://librecad.1049103.n5.nabble.com/Where-I-can-find-LFF-specification-arcs-tp5158044p5162736.html
To start a new topic under LibreCAD-dev, email [hidden email]
To unsubscribe from LibreCAD-dev, click here.
NAML
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Borneq
dxli wrote
 for local repository:
git pull

Will pull in updates from remote server 
I cloned https://github.com/LibreCAD/LibreCAD/ to https://github.com/borneq/LibreCAD
Next I cloned https://github.com/borneq/LibreCAD to local repository ~\LibreCad (master)
"git pull" fetches from https://github.com/borneq/LibreCAD to my local repository, but how merge with new changes from https://github.com/LibreCAD/LibreCAD/ ?
After "git pull" in my harddisk is old version unicode.lff
"git pull origin" - the same
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Rallaz

cd ~\LibreCad
git pull git@github.com:LibreCAD/LibreCAD.git master
Reply | Threaded
Open this post in threaded view
|

Re: Where I can find LFF specification (arcs) ?

Lisandro D. N. Pérez Meyer
In reply to this post by Borneq
On Sat 21 Jan 2012 11:41:48 usted escribió:
> Rallaz wrote
>
> >  I applied the pull request from Borneq in master and 1.0.0-SNAPSHOT
>
> I am newbie in GIT. How apply changes to my fork and my local copy?

Search the web for "Pro git pdf", or download the latex code and build it, or
buy the book ;-)

It's a very interesting and nice book :)

--
perezmeyer: Gus no tiene inet :-(
PabloOdorico: oh
perezmeyer: te mando una copia de lo que hagamos esta noche
PabloOdorico: de ultima mandame un loro del parque con una flash en la pata ;)

Lisandro Damián Nicanor Pérez Meyer
http://perezmeyer.com.ar/
http://perezmeyer.blogspot.com/

signature.asc (853 bytes) Download Attachment