ravas / dxfdedup (public) (License: GPLv3) (since 2017-04-04) (hash sha1)
dxfdedup removes duplicates from DXF files. Python 3.6+ and ezdxf are required. This project is in the alpha stage.

/README.md (137bb768cd8eb9030c8d4a6d5ec1f62db572d720) (1602 bytes) (mode 100644) (type blob)

dxfdedupli allows for you to remove duplicate entities from DXF files.

If you have suggestions or questions you can contact:
https://lastauth.com/profile/ravas
ravas(at)tuta.io

Requirements:

[Python 3.6+](https://www.python.org/)

On macOS install [homebrew](https://brew.sh/) and then in a terminal: 
`brew install python3`

On linux systems there will likely be a package you can install called python3.

On Windows you can just download the installer from the website.

[ezdxf](https://github.com/mozman/ezdxf)

After you install Python you can install ezdxf from a terminal:
`pip install ezdxf`

Place dxfdedup in your user site-packages folder.
You will need to create this folder.
Python will give you the path if you input the following in a terminal:
`python3 -m site --user-site`

It will be something like:

Linux:
~/.local/lib/python3.6/site-packages

Mac:
~/Library/Python/3.6/lib/python/site-packages

Windows:
%APPDATA%/Python/Python36/site-packages

Make the folder in a terminal:
`mkdir -p the_path`

Example of use:
```
import dxfdedup

# define the entity types that will be processed (optional)

entities = ['line', 'circle', 'lwpolyline', 'arc']

# create a Deduplicator object and optionally pass the entities list

d = dxfdedup.Deduplicator(entities)

# remove dupicates from a single file

d.dedup('/home/user_name/dxf_files/arbitrary.dxf')

# remove dupicates from all files in a directory

d.dedup_d('/home/user_name/dxf_files')

```

If you exclude the entities list, then it will remove duplicates for all currently supported entities.

- line
- circle
- lwpolyline
- arc


Mode Type Size Ref File
100644 blob 35146 20d40b6bceca3a6c0237d7455ebf1820aeff3680 LICENSE
100644 blob 1602 137bb768cd8eb9030c8d4a6d5ec1f62db572d720 README.md
100644 blob 3222 404816812322db6a6fb561bed01c33d266d59bf7 __init__.py
040000 tree - b2ee66e64b32c0d71a0b551d5e3607a48207cefa identifiers
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/ravas/dxfdedup

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/ravas/dxfdedup

Clone this repository using git:
git clone git://git.rocketgit.com/user/ravas/dxfdedup

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main