Speckle Client
¿Que es Speckle Systems?
Tools: Speckle-py (python SDK) and speckle-web (the server, 3d viewer and frontend app) Main modules: api (speckleClient, credentials, operations), objects (base, geometry, other), transports (ServerTransport, SQLiteTransport, MemoryTransport).
Speckle Systems is a platform for collaboration in the architecture, engineering, and construction (AEC) industry. It is similar to GitHub in that it allows users to share and manage data, but it is focused on 3D information.
Speckle Systems allows AEC professionals to share and collaborate on 3D models and other data, such as building information modeling (BIM) files. This can be useful for coordinating complex projects and ensuring that all team members have access to the most up-to-date information.
Speckle Systems also offers tools for visualizing and interacting with 3D data, such as viewing and measuring models, and creating annotations and markups. This can help AEC professionals to better understand and communicate their designs.
Overall, Speckle Systems is a platform that is gaining popularity in the AEC industry for its ability to support collaboration and data sharing among teams working on complex projects. It is similar to GitHub in its focus on sharing and managing data, but it is specialized for working with 3D information.
The base object
The base object: building block for all other speckle objects (inherited from base), contains some key fields (units, applicationId...) Using base: Serialization included: any classes that inherit from Base willbe serialisable through Speckle, when sending and receiving. Object kit: follows the c# objects. The objects include geometry, materials, transforms and blocks.
The Speckle client
The speckle client: interaction with the Speckle server's graphQL API. This includes create, read, update and delete functions for streams, branches, commits and objects. It requires a host (server url) and an auth token. Initialising a speckleClient: SpeckleClient tied to a server and an account. For make authenticated request, provide a token to the client. AccountHelper method to access your local accounts in Manager. Using the client: Pick a resource (stream, branch, commit, object) and methods. Get stream, use (create, update, delete) and grant/revoke stream permissions. StreamWrapper: grab a stream, branch, commit or object from a url. The wrapper stores the relevant IDs from the provided URL for easy access.
Transports
Transports: Serialise obejcts and persist them to storage. Deserialise json from storage into ibjects in memory. SpecklePy comer with ServerTransport (to a from a speckle server), SQLiteTransport (to and from your local databse), MemoryTransport (to and from memory), and you can write your own. Initialising the transports: stream id and client. SQLite transport can take different db paths if necessary. You can use wrapper to get authernticated client and server transport. Operations: transports can be passed to operation in order to be used for reading and writting (operation.recive, operation.send).
Extending base
custom objects: subclass base to create you speckle objects. Specify a speckle_type, and flag attributes as chinkable, detachable or ignored. Properties can be used as in normal python classes.
Última actualización
¿Te fue útil?