Showing posts with label 3D Model. Show all posts
Showing posts with label 3D Model. Show all posts

Monday, June 8, 2026

3D Model License Violation

I contribute 3D models to the 3D printing community on MakerWorld, the Bambu Lab model repository. One of the models that I uploaded was an iPad stand for thick cases, and it is the model in my collection that gets downloaded and printed the most. Recently a stranger messaged me to let me know that Sarina’s 3D Printing was selling my model on Facebook. This was Sarina’s post:

The problem with Sarina’s post is that I had uploaded the iPad stand under a Creative Commons Attribution-NonCommercial 4.0 International Deed (CC BY-NC 4.0) license which means that the model cannot be sold without my permission. So I decided to write a comment on Sarina’s post: “Just so everyone knows, the original model is available at https://makerworld.com/en/models/985191-stand-for-ipad-with-thick-case, and it is provided to the community under an Attribution-NonCommercial license which means that work must be attributed to the original designer, and the object cannot be sold.”

Within a couple of days, the post had been taken down. Unfortunately it is very common for people to violate Creative Commons license terms. Sometimes it is blatant theft, such as these examples:

Because I am only a 3D printing hobbyist, and I don’t depend on 3D printing for income, unapproved use of my models does not impact me financially. If anything, I choose the view the breach of licensing terms of my 3D model as a compliment. However, there are many designers out there whose models are used without their permission.

I greatly appreciate being notified by a stranger that someone was selling my model. I recently noticed some suspicious activity and took similar action. A designer posted AirPods Max Jewelry under a Cults 3D Private Use License which prohibits commercial sale, remixing for public sharing, and distribution. However, the exact same model was reposted as Airpods Max Skeleton Accessory. I publicly commented on the repost and also messaged the original designer.

I’ve found the 3D printing community to be helpful and supportive of one another, although there are occasional bad actors. If we all look out for each other, we can hopefully hold people accountable to the licenses that make this community possible.

Friday, April 17, 2026

3D Printing and Firearm Blocking Technology

On February 17, 2026, California introduced Assembly Bill 2047 which is known as the Firearm Printing Prevention Act. It would require several things to happen:

  • On or before July 1, 2027, the Department of Justice must publish written guidance on performance standards for persons or entities engaged in the creation of firearm blueprint detection algorithm to be certified for use by 3-dimensional printer manufacturers, as specified.
  • On or before January 1, 2028, the Department of Justice must accept applications for certification of firearms blueprint detection algorithms and begin issuing certifications of algorithms that meet or exceed the performance standards.
  • On or before July 1, 2028, any business that produces or manufactures 3-dimensional printers for sale or transfer in California must submit to the Department of Justice an attestation for each make and model of printer they intend to make available for sale or transfer in California, confirming that the manufacturer has equipped that make and model with a certified firearm blueprint detection algorithm.
  • On or before September 1, 2028, the Department of Justice must publish a list of all the makes and models of 3-dimensional printers whose manufacturers have submitted complete self-attestations and would require the department to update the list no less frequently than on a quarterly basis and to make the list available on the department’s internet website.
  • On March 1, 2029, the bill would prohibit the sale or transfer of 3-dimensional printers that are not equipped with firearm blocking technology and that are not listed on the department’s list of manufacturers with a certificate of compliance verification.

The bill would authorize a civil action to be brought against a person who sells, offers to sell, or transfers a printer without the firearm blocking technology. It would also make it a crime to knowingly disable, deactivate, uninstall, or otherwise circumvent any firearm blocking technology.

The bill refers to a couple of terms which deserve exploration. According to Assembly Bill 2047, “firearm blocking technology” means hardware, firmware, or other integrated technological measures capable of ensuring a three-dimensional printer will not proceed to any print job unless the underlying three-dimensional printing file has been evaluated by a firearms blueprints detection algorithm and determined not to be a printing file that would produce a firearm or illegal firearm parts. The bill also states that “firearm blueprint detection algorithm” means a software service that evaluates three-dimensional printing files, whether in the form of stereolithography (STL) files or other computer-aided design files or geometric code, to determine if the files can be used to program a three-dimensional printer to produce a firearm or illegal firearm parts, and flag any such files to prevent their use to manufacture a firearm or illegal firearm parts.

I searched the web to try to find companies or individuals who have created such technologies or algorithms, and the search results mainly yielded articles and videos about the 3D printing legislation in Washington, New York, and California. I then asked ChatGPT to summarize what it knows about firearm detection technology, and it stated that Thingiverse uses AI to detect and remove gun design files, and there are experimental tools such as 3D GUN’T. However, the solutions seem to be immature. ChatGPT concludes that the firearm blueprint detection algorithms mentioned in legislation are “largely hypothetical or early-stage” and “reliable prevention at the printer level is an unsolved problem” which is consistent with my observations.

I think that AI approaches are the best way to address this need, but I can also think of many challenges to doing it accurately. First, 3D models are not always designed so that the finished physical object is contained in a single file—they are often provided in multiple parts. Splitting a model could be necessary because the object is too large to fit on a standard print bed. It could also be because different parts of a model need to be printed with different materials (e.g., to add strength or flexibility) or colors. It could also be that certain features of a model are best printed in a certain orientation to optimize strength, improve print bed adhesion, reduce the need for support material, or factors to minimize chances of print failure. The bottom line is that when models are split into multiple objects, it could become difficult for firearm blocking technology to accurately understand that many parts, when assembled, would resemble a firearm.

Second, firearms come in many shapes and sizes. I suppose that with enough training data, AI-based detection methods could learn what many different kinds of firearms look like. But what happens when users modify (or “remix” as the 3D modeling community would say) models so that they differ from training data? For example, what if a 3D model of a gun is presented in the form of a kit card? Its overall geometry would be a square or rectangle. When the borders and connectors of the kit card are snapped off, it would look like a gun, but that would happen in post-processing (downstream of the AI detection). Or what if a 3D model of a firearm was natively designed with support material? The support material could make the overall geometry significantly different than the firearm after all the support material was removed. Could firearm blocking technology be reliable enough to understand all of this?

Third, will firearm blocking technology be capable of understanding functional capabilities of 3D models? In other words, could it tell the difference between a “real” functional firearm and a non-functional prop? What if someone wants to print a replica of Han Solo’s blaster for a Halloween costume or a Star Wars convention? Would firearm blocking technology have a high enough false positive rate that it could become a burden to print legitimate models that pose no danger to society?

Perhaps there are current solutions to these challenges, or maybe technology will advance rapidly enough in the next couple years that these problems will be in the rear view mirror. In any case, I believe we have a major problem with guns in the United States, and I would love to see progress on reducing injury and death from firearms. However, it feels to me that the 3D printing legislation is misdirected, and I fear that it will adversely affect hobbyists like me while doing little to nothing to curb illegal activity because criminals will just find ways to circumvent firearm blocking technology.

For an additional perspective, read The Dangers of California’s Legislation to Censor 3D Printing by the Electronic Frontier Foundation.

Wednesday, February 11, 2026

3D Model Figurine Generators

I started 3D printing as a hobby in May 2023. At the time, most of my 3D prints were of models that other people created and uploaded to free online repositories such as the ones I’ve described here. I then took the next logical step of learning a CAD application called Tinkercad to create my own simple models. For some specific use cases, I’ve experimented with 3D modeling streets and terrain. Generative artificial intelligence exploded onto the scene in recent years, and now there are many websites that allow users to upload a photo and automatically generate a 3D figurine without knowing anything about mesh modeling of curved surfaces. In this post, I compare 2 free 3D figurine generators: PrintU by Bambu Lab and FanForge by Creality.

As depicted in the image at the top, I uploaded the same photo to PrintU and FanForge and generated 3D models. Both PrintU and FanForge had relatively easy to understand wizard interfaces, and both websites offered variations for how to generate the 3D models. I generated 3 variations in each application, and screenshots of the 3D models are presented below.

As you can see, the 3 models generated by PrintU were far more realistic than the ones generated by FanForge. In fact, the FanForge models did not even remotely match the facial features that were in the uploaded photo. The FanForge models were more “artistic” which could partially explain their deviation from reality, but if the starting point is a bust photo, I have an expectation that the resultant model should bear some resemblance.

I’d have to experiment with additional models generated by different photos before drawing more definitive conclusions, but my initial impression is that PrintU is the clear winner in this head to head comparison.

Saturday, July 19, 2025

3D Modeling Streets and Terrain

I previously wrote about a couple of websites that allow you to create STL models of Earth’s surface: Terrain2STL and TouchTerrain. I recently discovered another website that allows you to create 3D models of both terrain and streets: Map2Model.

While Terrain2STL and TouchTerrain focus on generating 3D models of terrain, Map2Model is focused on generating 3D models of “typical” map features such as roads, buildings, water, and other features.

Start by searching for an address or a named location, then zoom in/out and center the map where you’d like to generate your 3D model. Choose a shape for your model: rectangle, square, circle, etc. Then position and size your shape on the map and press the “3D Preview” button to view, zoom, and rotate your 3D model. If happy with your model, export it in either 3MF or STL format.


For roads, water, grass, buildings, sand, and piers, there are settings that allow you to modify colors, model height, and other options which are useful if exporting in 3MF (but will not be represented in STL files because those file represent only geometry data). There are experimental features such as adding topography (similar to the terrain-focused 3D modeling websites) which in my experience with a few locations works pretty well.

Resultant models can be used for personal use, but for commercial use you’ll need to obtain a commercial license. Many thanks to Smoggy3D for developing such a nifty application!

Sunday, December 15, 2024

3D Model Repositories


If you’re a 3D printing hobbyist like me, you might enjoy downloading and printing 3D models that other people have painstakingly created. Whether your 3D prints have practical applications (e.g., containers, GoPro mounts, phone holders), are used for decorative display (e.g., art sculptures, HueForge prints, figurines), provide entertainment (e.g., games, puzzles), or other reasons, there is a chance that somebody has created a model that meets your criteria. There are many repositories where 3D models can be sold or even downloaded for free. Here are my 3 favorite model repositories.

Thingiverse is one of the early pioneers of open source 3D models and is one of my favorite repositories. It has a long history and is currently owned by a 3D printer manufacturer called Ultimaker. Ultimaker is also the developer of an open source slicer called Cura, and while Thingiverse features an “Open in Cura” button in its model download page, that is currently the full extent of its workflow integration with a slicer. However, I like Thingiverse because it features one of the largest libraries of 3D models around, and everything that you see on Thingiverse can be downloaded for free. Designers who upload 3D models to Thingiverse can connect their accounts to one of several donation platforms (PayPal, Ko-fi, Github, Patreon, or BuyMeACoffee) to accept tips, but beyond a relatively inconspicuous “Tip designer” button on each 3D model’s page, the central focus of Thingiverse is around sharing open source models rather than commerce.

MakerWorld is a newer 3d model repository that is owned by 3D printer manufacturer Bambu Lab. MakerWorld is another one of my favorite repositories because it has a very active designer community that uploads an extensive assortment of 3D models. All models in MakerWorld are free, and there is an unobtrusive incentive system for designers to earn points that can be redeemed for Bambu Lab merchandise. It features workflow integration with Bambu Labs’ default slicer, Bambu Studio, in the form of print profiles. Any 3D model may be linked with 1 or more print profiles which includes slicer settings such as layer height, wall loops, infill density, or other slicer settings that are uploaded by the original designer or other users who have downloaded and successfully printed the same 3D model. Simply clicking on a print profile on the MakerWorld website results in launching and loading the model into Bambu Studio, along with the relevant slicer settings in the chosen print profile. Despite this tight integration with the Bambu Lab ecosystem, models can be downloaded and sliced in other slicers and printed with 3D printers other than Bambu Lab.

Printables is owned by Prusa Research, the same company that manufactures open source Prusa 3D printers and develops PrusaSlicer. Most models in Printables are free, although Printables features a separate Store where designers can sell their models as well. I appreciate how the free models are shown by default, and a user must navigate to the Store section of the website to browse and purchase models that are sold for a fee. There is a reward system where designers and visitors can collect points in exchange for filament or other rewards. Models can be downloaded or opened in PrusaSlicer, although there do not appear to be any print profiles that accompany the model files.

In addition to my 3 favorite model repositories above, there are some honorable mentions that I’ll briefly discuss.

Creality Cloud is owned by—you guessed it—Creality. There are free and paid models mixed together, and there is print profile integration with Creality 3D printers. This appears to be a recent development, but I have not been able to test it because I no longer have a Creality printer. Much of the user experience centers around 3D model sales, so I generally don’t visit this repository regularly.

Cults 3D is an independent, self-financed site that is run by 4 guys in France who state in their “About” page that their advantage is they they not accountable to any investor or brand. Although there are both paid and free models, one thing I like about their search function is that the results page can be filtered to show only free models.

Thangs is registered to Physna, a company that advertises itself as providing the the world’s leading geometric search engine. It contains a lot of free models, and also has a marketplace for buying and selling models.

Are there other 3D model repositories that you like to use often? Feel free to leave a comment and describe your favorite 3D model repository.

Monday, July 8, 2024

Simplifying 3D Models

Have you ever used an application to generate a 3D model and ended up with an enormous .stl file? When I use HueForge, the resultant .stl files are usually around 125 MB. When I use TouchTerrain, I also end up with large 3D models. However, unnecessarily large models require more time for slicing and more storage space. Furthermore, if you plan to share your models on Thingiverse or other 3D model repositories, it may not be necessary to propagate such large models. Finally, what’s most important to me is that sometimes I want to edit models in Tinkercad, but 3D model imports are limited to files with 300,000 triangles or less. This is where mesh simplification comes in handy.

Mesh simplification, also known as mesh decimation or polygon reduction, is the process of reducing the number of polygons in a 3D model while maintaining as much of the original shape, appearance, and important features of the model as possible. This is similar in concept to compressing images and audio files where the intent is to reduce file size while preserving as much of the image or audio quality as possible. Mesh simplification is a feature of Blender, Meshmixer, MeshLab, SolidWorks, and other 3D modeling applications. But what if you don’t have any of these applications? While some of them are free to use, I haven’t wanted to install an application for the sole purpose of using its mesh simplification feature.

Fortunately I discovered 2 potential solutions that are both free and can run straight from your web browser. The first is 3DLess.com where you simply choose your file, specify the target number of vertices, and save your file. If you are concerned about privacy, a big benefit is that the processing happens locally on your web browser, meaning that your file is not uploaded. In my limited experience, this has not successfully reduced polygon counts or file sizes on the large .stl files that I’ve been trying to simplify. I assume I’m doing something wrong, so I mention this website in case others find success with it.


My preferred option is Fast Quadric Mesh Simplification. Simply choose your file, specify a % reduction, and click the “Simplify” button. I’ve found that it simplifies 125 MB HueForge files in a matter of seconds, and despite reducing polygons to 10% of its original size, I cannot visually tell the difference between the original and simplified models. Most importantly, this website has reduced models to the point where I can import them into Tinkercad and make simple modifications.

If you are looking for a free and easy solution to simplify your 3D models, I hope you are able to get great results with one of the above options. If you are aware other other websites that do something similar, let me know!

Sunday, July 7, 2024

3D Modeling Earth’s Surface


Have you ever wanted to create a 3D model of a specific section of earth’s surface? I heard that it could be done using topographic data from the U.S. Geological Survey (USGS). So I asked ChatGPT to tell me step by step how to convert USGS topographic data into a 3D model in .stl format (see thread here). In response, ChatGPT told me that I need to:
  1. Download USGS topographic data
  2. Preprocess the data using GDAL to convert to ASCII Grid
  3. Convert ASCII Grid to a 3D mesh using QGIS and the DEMto3D plugin
  4. Optionally refine the 3D model in MeshLab
  5. Save the final model in STL format

That sounded complex to me, as it involves applications and file formats that I have not previously worked with. Fortunately, I discovered that there is a much easier and faster way to get 3D models in .stl format. Simply use a website that provides this specific service. Here are 2 options:

Terrain2STL is a website that allows you to create .stl models of the surface of Earth. Its interface is pretty straightforward. You can zoom/drag to a location using Google Maps which defaults to Terrain View. You can also enter GPS coordinates (refer to this post for a refresher). Next, enter details about the width, height, and other details related to the dimensions of your desired model. Then adjust settings related to water and base height and finally export your model in .stl format. Terrain2STL has the advantage of its simplicity, but its main disadvantage is its resolution which is limited to 90 meters. Here is a screenshot of Terrain2STL (click to enlarge):


TouchTerrain is another website that allows you to create 3D printable terrain models. Similar to Terrain2STL, TouchTerrain allows you to zoom/drag to a location using Google Maps, but TouchTerrain also allows you to search for a place by its name, address, or GPS coordinates which can be very useful. TouchTerrain also allows you to choose from 3 different elevation data sources, each of which has varying resolution ranging from 10 to 2000 meters, depending on its purpose. For me the default USGS data source with 10 meter resolution produced a model with the level of detail that I was looking for. It also has inputs for 3D printer settings such as your build plate dimensions to help you determine the maximum size of your model. After inputting the relevant settings, generate and download your .stl model. Here is a screenshot of TouchTerrain (click to enlarge):


After you get your desired model from either Terrain2STL, TouchTerrain, or another method, you’ll be ready to slice and 3D print your model.