Claude's Corner: Art Works

The Venerator: a steampunk armed merchant... in spaaace!

Preview of a 3D model depicting a spaceship that's have train engine, half freighter, and all guns.

This is another ship from The Dream, similar to the Spirit Walk. This one has less of a backstory; let's just say it's supposed to be "only" an armed merchant, but it rivals many dedicated warships. Its captain and owner is very successful, and doesn't fool around.

Length:
200 meters
Beam:
20 meters (turrets excepted)
Decks:
6
Complement:
~1500
Cargo capacity:
to be determined
Armament:
6 plasma gatling guns
3 dual autocannons

OpenSCAD source code, first version as of April 2024:

module MainBody() {
	rotate ([-90, 0, 0])
		cylinder (h = 120, d = 10, center = true);
	translate ([0, 60, 0]) sphere (d = 10);
	translate ([0, -60, 0]) sphere (d = 10);
}

// Central section
color ("silver") hull () {
	translate ([5, 0, 0]) MainBody();
	translate ([-5, 0, 0]) MainBody();
}
color ("gray") {
	translate ([0, -15, 0]) cube ([1, 75, 15], center=true);
}

module CargoBay () {
	cube ([10, 14, 19], center = true);
	cube ([9, 15, 19], center = true);
	cube ([9, 14, 20], center = true);
}
// Cargo bays
color ("darkseagreen") {
	translate ([0, 10, 0]) CargoBay();
	translate ([0, -10, 0]) CargoBay();
	translate ([0, -30, 0]) CargoBay();
}

module Turret () {
	color ("silver") {
		cylinder (h = 2.5, d = 6, center = true, $fn=30);
		cylinder (h = 3.5, d = 3, center = true, $fn=15);
	}
	color ("gray") rotate ([-90, 0, 0])
		cylinder (h = 6, d = 1);
}

// Port
translate ([-10, 0, 0]) rotate ([0, 0, 90]) Turret();
translate ([-10, 45, 0]) rotate ([0, 0, 45]) Turret();
translate ([-10, -45, 0]) rotate ([0, 0, 135]) Turret();

// Starboard
translate ([10, 0, 0]) rotate ([0, 0, -90]) Turret();
translate ([10, 45, 0]) rotate ([0, 0, -45]) Turret();
translate ([10, -45, 0]) rotate ([0, 0, -135]) Turret();

module DivingPlane () {
	color ("gray") scale([0.2, 1, 1])
		cylinder (h = 5, r1 = 3, r2 = 2);
}

// Fore
translate ([7.5, 70, 0])
	rotate ([0, 90, 0]) DivingPlane();
translate ([-7.5, 70, 0])
	rotate ([0, -90, 0]) DivingPlane();
// Aft
translate ([7.5, -70, 0])
	rotate ([0, 90, 0]) DivingPlane();
translate ([-7.5, -70, 0])
	rotate ([0, -90, 0]) DivingPlane();

module BridgeWindowHole () {
	translate ([0, 7.5, 0])
		cube ([1.5, 5, 2], center = true);
}

// Front section
union () {
	difference () {
		color ("silver") hull () {
			translate ([0, 30, 7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 30, -7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 85, 7.5])
				sphere (d = 15, $fn=30);
			translate ([0, 75, -7.5])
				sphere (d = 15, $fn=30);
		}
		// Open decks
		color ("darkseagreen") translate ([0, 56, 6])
			cube ([18, 36, 2], center = true);
		color ("darkseagreen") translate ([0, 53, -6])
			cube ([18, 30, 2], center = true);
		// Bridge windows holes
		color ("gray") translate ([0, 85, 7.5]) {
				BridgeWindowHole();
				rotate ([0, 0, 15])
					BridgeWindowHole();
				rotate ([0, 0, -15])
					BridgeWindowHole();
				rotate ([0, 0, 30])
					BridgeWindowHole();
				rotate ([0, 0, -30])
					BridgeWindowHole();
		}
	}
	// Bridge windows
	color ("turquoise") translate ([0, 85, 7.5])
		sphere (d = 14, $fn=30);
	// Inner hull
	color ("silver") translate ([0, 55, 0])
		cube ([12, 40, 20], center = true);
	// Exposed bulkheads
	color ("darkseagreen") translate ([0, 45, 0])
		cube ([14, 1, 15], center = true);
	color ("darkseagreen") translate ([0, 55, 0])
		cube ([14, 1, 15], center = true);
	color ("darkseagreen") translate ([0, 65, 0])
		cube ([14, 1, 15], center = true);
	// Port
	color ("silver") translate ([-7.5, 77, 3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	color ("silver") translate ([-7.5, 73, -3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	// Starboard
	color ("silver") translate ([7.5, 77, 3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
	color ("silver") translate ([7.5, 73, -3])
		scale ([1, 3, 1]) sphere (d = 2, $fn = 10);
}

module Gun () {
	color ("silver") rotate ([0, 90, 0]) {
		cylinder (h = 5, d = 4.5, center = true, $fn=15);
		cylinder (h = 6, d = 3, center = true, $fn=15);
	}
	color ("gray") {
		translate ([-1, 0, 0]) cylinder (h = 5, d = 0.8);
		translate ([1, 0, 0]) cylinder (h = 5, d = 0.8);
	}
}

translate ([0, 25, 12]) rotate ([45, 0, 0]) Gun();
translate ([0, 25, -12]) rotate ([135, 0, 0]) Gun();
translate ([0, 80, -12]) rotate ([-135, 0, 0]) Gun();

// Rear section
color ("silver") {
	hull () {
		translate ([0, -50, 7.5]) sphere (d = 15, $fn=30);
		translate ([0, -50, -7.5]) sphere (d = 15, $fn=30);
		translate ([0, -80, 7.5]) sphere (d = 15, $fn=30);
		translate ([0, -80, -7.5]) sphere (d = 15, $fn=30);
	}
	translate ([0, -80, 3])
		cylinder (h = 3, d = 18, center = true, $fn=30);
	translate ([0, -80, -3])
		cylinder (h = 3, d = 18, center = true, $fn=30);
}

module Thruster () {
	rotate ([90, 0, 0]) {
		hull () {
			cylinder (h = 30, d = 5, center=true, $fn = 10);
			cylinder (h = 40, d = 3, center=true, $fn = 10);
		}
	}
}

color ("silver") {
	translate ([-7.5, -70, 10]) Thruster();
	translate ([7.5, -70, 10]) Thruster();
	translate ([-7.5, -70, -10]) Thruster();
	translate ([7.5, -70, -10]) Thruster();
}

Note: the Venerator isn't mine. Source code is provided for entertainment and education.