libredwg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libredwg] Re: libreDWG decode_3dsolid


From: Felipe Sanches
Subject: Re: [libredwg] Re: libreDWG decode_3dsolid
Date: Mon, 22 Feb 2010 22:08:07 -0300

I got this:

koo mi n o
ni ^*+0;:,4 ^*+0\^[ nh ^LR iqoqmqhoml QK mk K7* P<+ ml nhejiekg moog
n fqfffffffffffffffj:rooh n:rono
=0;& {rn {n {rn {rn |
3*2/ {rn {rn {m {o |
,7:33 {rn {rn {rn {l {rn {n |
9><: {rn {rn {k {m {rn {j 90-(>-; ;0*=3: 0*+ |
300/ {rn {rn {i {l |
/3>1:r,*-9><: {rn rjmlkqngiiifolnmhof nfigqhiiofkljigimi o o o n n o o
90-(>-;@) V V V V |
<0:;8: {rn {h {g {rn {f -:):-,:; {k {rn |
<0:;8: {rn {no {i {rn {nn -:):-,:; {k {rn |
<0:;8: {rn {i {no {rn {nm -:):-,:; {k {rn |
:;8: {rn {nl {nk {i {nj 90-(>-; |
<0:;8: {rn {g {h {rn {ni -:):-,:; {k {rn |
:;8: {rn {nh {nl {h {ng 90-(>-; |
:;8: {rn {nk {nf {g {mo 90-(>-; |
):-+:' {rn {f {mn |
):-+:' {rn {f {mm |
,+->687+r<*-): {rn rigliqllnkglinlhgh lfglqllffhfojiiing o n o o V V |
:;8: {rn {nf {nh {no {ml 90-(>-; |
):-+:' {rn {ni {mk |
,+->687+r<*-): {rn rigliqllnkglinlhgh rkjqgohhfolkmfliikm o o n o V V |
):-+:' {rn {nm {mj |
,+->687+r<*-): {rn rlilmqokngjkkkghjkh lfglqllffhfojiiing o o rn o V V |
/061+ {rn rigliqllnkglinlhgh lfglqllffhfojiiing o |
/061+ {rn rlilmqokngjkkkghjkh lfglqllffhfojiiing o |
,+->687+r<*-): {rn rlilmqokngjkkkghjkh rkjqgohhfolkmfliikm o rn o o V V |
/061+ {rn rigliqllnkglinlhgh rkjqgohhfolkmfliikm o |
/061+ {rn rlilmqokngjkkkghjkh rkjqgohhfolkmfliikm o |

I am not sure whether this is correct, though.


by applying the de-obfuscation algorithms proposed by him I've got
this, which looks good:

400 26 1 0          ��16 Autodesk AutoCAD 17 ASM 6.0.2.7023 NT 24 Thu
Oct 23 17:56:48 2008 ��1 9.9999999999999995e-007 1e-010 ��body $-1 $1
$-1 $-1 #��lump $-1 $-1 $2 $0 #��shell $-1 $-1 $-1 $3 $-1 $1 #��face
$-1 $-1 $4 $2 $-1 $5 forward double out #��loop $-1 $-1 $6 $3
#��plane-surface $-1 -5234.1866690312709 1968.7660943568626 0 0 0 1 1
0 0 forward_v I I I I #��coedge $-1 $7 $8 $-1 $9 reversed $4 $-1
#��coedge $-1 $10 $6 $-1 $11 reversed $4 $-1 #��coedge $-1 $6 $10 $-1
$12 reversed $4 $-1 #��edge $-1 $13 $14 $6 $15 forward #��coedge $-1
$8 $7 $-1 $16 reversed $4 $-1 #��edge $-1 $17 $13 $7 $18 forward
#��edge $-1 $14 $19 $8 $20 forward #��vertex $-1 $9 $21 #��vertex $-1
$9 $22 #��straight-curve $-1 -6836.331483613787 3983.3399790566618 0 1
0 0 I I #��edge $-1 $19 $17 $10 $23 forward #��vertex $-1 $16 $24
#��straight-curve $-1 -6836.331483613787 -45.807790342936642 0 0 1 0 I
I #��vertex $-1 $12 $25 #��straight-curve $-1 -3632.0418544487547
3983.3399790566618 0 0 -1 0 I I #��point $-1 -6836.331483613787
3983.3399790566618 0 #��point $-1 -3632.0418544487547
3983.3399790566618 0 #��straight-curve $-1 -3632.0418544487547
-45.807790342936642 0 -1 0 0 I I #��point $-1 -6836.331483613787
-45.807790342936642 0 #��point $-1 -3632.0418544487547
-45.807790342936642 0 #��

by changing the algorithm to:

              for (j=0;j<FIELD_VALUE(block_size[i]);j++){
                if (FIELD_VALUE(sat_data[i][j]<=32))
                    fprintf(stderr, "%c", FIELD_VALUE(sat_data[i][j]));
                else
                    fprintf(stderr, "%c", 159-FIELD_VALUE(sat_data[i][j]));
              }
              fprintf(stderr, "\n");

I got this, which looks awesome:

400 26 1 0
16 Autodesk AutoCAD 17 ASM 6.0.2.7023 NT 24 Thu Oct 23 17:56:48 2008
1 9.9999999999999995e-007 1e-010
body $-1 $1 $-1 $-1 #
lump $-1 $-1 $2 $0 #
shell $-1 $-1 $-1 $3 $-1 $1 #
face $-1 $-1 $4 $2 $-1 $5 forward double out #
loop $-1 $-1 $6 $3 #
plane-surface $-1 -5234.1866690312709 1968.7660943568626 0 0 0 1 1 0 0
forward_v I I I I #
coedge $-1 $7 $8 $-1 $9 reversed $4 $-1 #
coedge $-1 $10 $6 $-1 $11 reversed $4 $-1 #
coedge $-1 $6 $10 $-1 $12 reversed $4 $-1 #
edge $-1 $13 $14 $6 $15 forward #
coedge $-1 $8 $7 $-1 $16 reversed $4 $-1 #
edge $-1 $17 $13 $7 $18 forward #
edge $-1 $14 $19 $8 $20 forward #
vertex $-1 $9 $21 #
vertex $-1 $9 $22 #
straight-curve $-1 -6836.331483613787 3983.3399790566618 0 1 0 0 I I #
edge $-1 $19 $17 $10 $23 forward #
vertex $-1 $16 $24 #
straight-curve $-1 -6836.331483613787 -45.807790342936642 0 0 1 0 I I #
vertex $-1 $12 $25 #
straight-curve $-1 -3632.0418544487547 3983.3399790566618 0 0 -1 0 I I #
point $-1 -6836.331483613787 3983.3399790566618 0 #
point $-1 -3632.0418544487547 3983.3399790566618 0 #
straight-curve $-1 -3632.0418544487547 -45.807790342936642 0 -1 0 0 I I #
point $-1 -6836.331483613787 -45.807790342936642 0 #
point $-1 -3632.0418544487547 -45.807790342936642 0 #

On Mon, Feb 22, 2010 at 8:28 PM, Rodrigo Rodrigues da Silva
<address@hidden> wrote:
> Felipe Sanches wrote:
>>
>> Somebody should try to write a libredwg example application that uses
>> the SAT parser/importer from OpenCASCADE that Rodrigo mentioned to
>> export DWG to some 3D open CAD format (perhaps COLLADA? or STEP?).
>
> The SAT module is not free. Although, I think they are still supplying demos
> - assuming that the only legitimate use of proprietary software is to write
> free software, I think it's ok if someone asks for one =D
>
> BTW, what about that decode function from Александр Ткаченко... sth like
>
> if (c==32)
> ...nothing
> else { c = 159 - c; }
>
> Maybe that's some kind of obfuscation. We should check if the value of the
> SAT array is human readable ASCII text. If not, maybe he was actually making
> a point.
>
> Александр Ткаченко, can you provide further information on this function you
> suggested?
>
>
>
>
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]