| Usage |
python g-code_ripper-XXX.py [-g file ] or g-code_ripper-XXX.py [-g file ] |
|
-c (or --config_file) |
Configuration file to read |
|
-g (or --gcode_file) |
g-code file to read |
|
-d (or --defdir) |
Default open/save directory |
|
-h (or --help) |
print syntax help to console window. |
|
Example (Using python script with preinstalled python distribution) |
python g-code_ripper-XXX.py -g my_file.ngc |
|
Example (Using precompiled Windows executable) |
g-code_ripper-XXX.exe -g my_file.ngc |
| F1 | Open the Help dialog box. (There is nothing in the help except a reference back to the web page and my e-mail address) |
| F2 | Opens General Settings Window |
| F5 | Refresh display |
|
g-code-ripper_config.ngc or .gcoderipperrc |
When G-Code Ripper starts up the directory in which G-Code Ripper starts in is searched for a file named "g-code-ripper_config.ngc". If the file is found it is read and all of the G-Code Ripper options are set according to the settings saved in the config file. After searching for the config file in the current directory the users home directory is searched for "g-code-ripper_config.ngc" or ".gcoderipperrc" if either of these are found it will be used as the default settings. Only the first config file found is read. To create a config file with your preferred options for startup just open G-Code Ripper and change the settings to your liking and click the save button next to configuration file in the settings window. |
| G-Code Base Operations: | This section contains basic operations that are performed prior to any G-Code Operations selected below. The base operations are always applied before the additional operations. |
| Scale XY | Sets the scaling percentage for X and Y axes to be applied to the input g-code file. |
| Scale Z | Sets the scaling percentage for Z axis to be applied to the input g-code file. |
| Scale Feed | Sets the scaling percentage for feed rate to be applied to the input g-code file. |
| Rotate | Sets the angle in degrees to rotate input g-code file. |
| Origin | The origin determines the relative location of the g-code x and y zero location. The current location of the origin is displayed in the display window as a red and green lines. The red and green lines follow the RGB convention Red is the x-axis, Green in the y-axis. |
| Save G-Code File Base (Button) | This button results in saving the g-code with only the option above the button being applied (scale, rotate, origin). Any further options from below or on the right side of the image are not applied. |
| View Plane: | This section contains a variety of view plane orientations only one of the options is active at any time. |
| G-Code Operations: | In this section the additional operations that can be applied to the g-code can be selected. |
| None | No operations are performed in addition to the base operations. |
| Split | The G-Code is split along a line creating two g-code programs that can be run independently. |
| Wrap | One of the G-Code linear axes (X or Y) is mapped to a rotary axis (A or B) for machining on a cylinder. |
| Input Field | Description |
| Split X Position | X position of the splitting line. (i.e. the line on which the g-code is divided into two parts.) The X position is measured from the origin set in the base operations section. |
| Split Y Position | Y position of the splitting line. (i.e. the line on which the g-code is divided into two parts.) The Y position is measured from the origin set in the base operations section. |
| Split Angle | The angle of the splitting line. |
| Rotate Black | The rotate black setting determines whether one of the two sides of the split will be rotated by 180 degrees. Rotating 180 degrees allows the stock to be rotated 180 degrees in the machine to machine the second half. Doing this process can effectively increase size of designs that can be cut by a given machine. |
| Save G-Code File-Black (Button) | This button saves the g-code displayed as black in the canvas. |
| Save G-Code File-White (Button) | This button saves the g-code displayed as white in the canvas. |
| Plunge Feed | Because the g-code is being split additional cut starts and stops are required. During the additional starts the tool needs to plunge into the stock material. The plunge feed sets the feed rate for these new moves into the stock material. |
| Z Safe | Because the g-code is being split additional cut starts and stops are required. After one of the additional cut stops the tool needs to move to a safe position for rapid movement. The Z Safe setting sets the z position of this z location that is safe for rapid motions. |


| Input Field | Description |
| Wrap Diameter | The wrap diameter is the diameter of the cylinder which the g-code will be mapped to. |
| Y-Axis to A-Axis | Map the Y axis positions to the A-Axis |
| X-Axis to B-Axis | Map the X axis positions to the B-Axis |
| Y-Axis to B-Axis | Map the Y axis positions to the B-Axis |
| X-Axis to A-Axis | Map the X axis positions to the A-Axis |
| Feed Adjust |
How feed rates work in Mach2 and LinuxCNC (and others?):For linear motion (i.e. x,y and/or z motion):each axis moves at constant speed and all axes move from their starting positions to their end positions at the same time. For linear motion with rotation (i.e. x,y and/or z motion AND a and/or b motion): When a rotary axis is included in the movement (i.e. ther is x,y,z motion AND a or b motion) the speed is still controlled by the linear distance to be traveled in x,y,z the A,B motion has no effect on the time to complete the motion. For Rotary motion (i.e. a and/or b motion without any x,y and/or z motion): When there is no linear motion the feed rate is interpreted as a angular rate (degrees/min) Feed Adjust Settings:Feed Adjust: Scale-RotaryG-Code Ripper takes all of these scenarios into account and adjusts the feed rate accordingly to make the feed rate consistent when cutting on a cylinder. Feed Adjust: None G-Code ripper does not scale feeds in any way. (This is the same a CNCwrapper output) A note for Mach3 users: In Mach3 there is a entry (Under Settings (Alt-6)) to set the Rotation Radius using this setting will tell Mach3 how to interpret the feed rates for code mapped to a cylinder of that radius. If you use the Rotation radius you will want to select None for the Feed adjust setting in G-Code Ripper. |
| Reverse Rotary Axis | G-Code Ripper assumes that a positive linear position is always mapped to a positive angular position. If your rotary axis (A or B) is set up such that the positive linear position should be mapped to a negative angular position check this box. |
| Save G-Code File-Wrap (Button) | This button saves the wrapped g-code. |
| Stock Rounding (Button) | This button opens the Stock Rounding window. In the stock rounding window you can generate g-code for making the stock material round using a spiral cut. |

| Input Field | Description |
| Include Rapid Moves | If selected the rapid moves will be included in the exported output. |
| File Type | Select the type of file to be exported |

| Input Field | Description |
| Probe X Offset |
X distance from the tool to the probe. (if the tool is the probe this should be set to zero) |
| Probe Y Offset |
Y distance from the tool to the probe. (if the tool is the probe this should be set to zero) |
| Probe Z Offset |
Z distance from the tool to the probe. (if the tool is the probe this should be set to zero) (It is best to keep this value as close to zero as possible to prevent crashing the tool or probe) |
| Probe Z Safe |
This is the safe Z height when probing (When the probe is over the work piece). Be aware of where the tool will be when the probe is at this position to avoid cashing the tool. |
| Probe Depth |
Max Depth the probe will travel attempting to detect the work piece. If the probe travels to this position and does not detect the part an error will occur. |
| Probe Feed | The feed rate for the probe when it is lowering to detect the part. |
| X Points |
This is the number of points that form the grid of probe points in the X direction. Points that are not needed (too far from tool path) are displayed as black in the preview canvas and will not probed. |
| Y Points |
This is the number of points that form the grid of probe points in the Y direction. Points that are not needed (too far from tool path) are displayed as black in the preview canvas and will not probed. |
| Post Probe |
This is a text entry field for any G-Codes that should be executed prior to the pause between probing and cutting. (If you want to swap the probe head for the tool head you may want to raise to a specified Z height (i.e. G0Z5.0) |
| Controller | Set the CNC controller to be used. LinuxCNC and MACH3 are supported. They require different codes for probing etc. |
To understand the film’s legacy, it’s essential to separate it from its predecessor:
| Feature | Open Water (2003) | Open Water 2: Adrift (2006) | | :--- | :--- | :--- | | Threat | Sharks, distance from shore | Inability to re-enter boat, dehydration | | Setting | Deep ocean, no vessel | Alongside a luxury yacht | | Style | Found footage, handheld, grainy | Polished, widescreen, cinematic | | Tone | Bleak, naturalistic | Claustrophobic, ironic | | Enemy | Nature via predators | Nature via physics & human error |
A critical theme in Adrift is the failure of technology to save the user. The yacht is equipped with radios, GPS, and safety equipment, yet none of it is accessible due to a simple design oversight: the ladder.
The yacht represents a "modern ruin." It is a fully functional object that might as well be a rock in the middle of the ocean. This critiques the modern reliance on technology. The characters are surrounded by the trappings of safety (life vests, the boat itself), yet they are doomed by a lack of basic practical knowledge. The film suggests that in a survival scenario, a $500,000 boat is less useful than a length of rope.
The "ladder" serves as a metaphor for social mobility and exclusion. The characters are effectively locked out of their own lives by their own negligence. They are "adrift" not because the ocean is moving them, but because they have lost their anchor to their previous reality.
Open Water 2: Adrift is a nihilistic examination of human incompetence. It strips away the grandeur of the survival genre—the storms, the sharks, the treacherous currents—and replaces them with a ladder. By doing so, it highlights that the most dangerous element in a crisis is not the environment, but the human mind.
The film leaves the viewer with a lingering sense
The 2006 film Open Water 2: Adrift is a masterclass in a very specific kind of horror: the "idiot-plot" tragedy. While the original Open Water (2003) focused on the terrifying isolation of being left behind by a dive boat, Adrift pivots to a more avoidable, yet equally haunting scenario—getting locked out of your own sanctuary. The Premise: A Birthday Trip Gone Wrong
The story follows a group of high school friends who reunite for a luxury weekend on a high-end yacht in the Mexico. The mood is celebratory until a moment of thoughtlessness turns the trip into a fight for survival. Open Water 2- Adrift -2006-
After most of the group jumps into the ocean for a swim, they realize with mounting dread that no one lowered the swim ladder. Because the sides of the yacht are too high and the hull is too slick to climb, they find themselves treading water just inches away from safety, while an infant remains alone on the deck. Fact vs. Fiction: Is it a True Story?
Much like its predecessor, Adrift marketed itself as being "based on true events." However, the connection is loose. The film is actually inspired by the short story Adrift by Kiki Sullivan, which was reportedly based on a real-life incident where a group of swimmers was stranded in a similar manner.
While the specific characters and dramatic deaths are fictionalized for Hollywood, the core conflict—the psychological toll of being so close to a solution you cannot reach—is grounded in a very real maritime fear. The Psychology of "The Ladder"
What makes Open Water 2 more frustrating (and arguably more effective) than the first film is the proximity to salvation. In the original, the protagonists are lost in a vast, empty blue. In Adrift, the characters are right next to their beds, their food, and their cell phones. The film explores:
Panic vs. Logic: As the hours pass, the group’s ability to cooperate dissolves. They attempt various "MacGyver-esque" solutions—using swimsuits as ropes or trying to stab the hull with a knife—that fail due to exhaustion and hysteria.
Past Traumas: The character Amy (Susan May Pratt) suffers from aquaphobia due to a childhood trauma, adding a layer of internal conflict to the external struggle.
Social Friction: Long-simmering resentments between the friends boil over, proving that in survival situations, the people you’re with can be more dangerous than the environment. Critical and Commercial Reception
Upon its release in 2006, the film received mixed reviews. Critics praised the tension but often found the characters' lack of foresight frustrating. However, it has since gained a "cult" status among fans of the "contained thriller" subgenre. It sits alongside films like The Reef and Frozen (2010) as a cautionary tale about the thin line between a luxury vacation and a fatal disaster. Legacy: The Ultimate Cautionary Tale To understand the film’s legacy, it’s essential to
Open Water 2: Adrift serves as a grim reminder of the importance of basic safety protocols. For boaters, it turned "lowering the ladder" into a survival mantra. For film buffs, it remains a quintessential example of how to build 90 minutes of suspense out of a single, devastatingly simple mistake.
While it was marketed as a sequel to capitalize on the success of the original movie, Open Water 2: Adrift (2006)
is a standalone psychological thriller that shares no plot or character connections with its predecessor. The Story & Concept
The film follows a group of high school friends who reunite for a weekend cruise on a luxury yacht. The "horror" begins not from sharks, but from a single, catastrophic human error: everyone jumps into the ocean for a swim, forgetting to lower the ladder. The Dilemma
: The group is stranded in the water, just inches away from the hull of their boat, with no way to climb back on. The Stakes
: A baby is left alone on the yacht, and the group must find a way back on board before they succumb to exhaustion or hypothermia. True Story?
: Despite promotional claims that it was based on actual events, the script is actually an adaptation of the fictional short story by Koji Suzuki. Feature Details DVD REVIEW: OPEN WATER 2 – ADRIFT - CHUD.com
Open Water 2: Adrift (2006) pivots from shark-driven horror to a psychological study of existential panic, focusing on the preventable disaster of six friends trapped in the ocean after failing to lower their yacht's ladder. Loosely based on a Koji Suzuki story, the film examines the fatal consequences of vanity and ego, culminating in an ambiguous ending regarding the survival of the protagonist, Amy. For more insights into this, watch the analysis at TikTok. Director Hans Horn wisely focuses on two forms of horror:
"Open Water 2: Adrift" is a 2006 British thriller film directed by Henry-Alex Rubin and starring Richard Laxton, Steve Howey, and Luke McCross. The film is a sequel to the 2003 film "Open Water", but the two movies do not share a common storyline.
The movie follows two couples, Richard (Richard Laxton) and Hannah (Sarah Wayne Callies), and Steven (Steve Howey) and Lucy (Lauren Taylor), who embark on a sailing trip. However, their journey takes a deadly turn when they become stranded at sea after a catastrophic event.
As the group tries to survive the harsh conditions, tensions rise and they begin to suspect that they may not all make it out alive. The film builds up to a thrilling and intense climax as the survivors try to find a way to escape the open waters.
"Open Water 2: Adrift" received mixed reviews from critics, but was praised for its suspenseful atmosphere and strong performances from the cast. If you enjoy thriller movies with a nautical theme, you may find "Open Water 2: Adrift" to be a gripping and entertaining watch.
Narratively, the film is a slow-burn tragedy. Unlike action survival films, Adrift focuses on the tediousness of dying. The characters try various methods to board the ship—making a human pyramid, using a bikini top as a rope, punching the glass—all of which fail.
This repetitive structure forces the audience to share in the characters' frustration. The film refuses to give the audience a "eureka" moment until the very end. The climax, where Amy finally overcomes her aquaphobia to dive beneath the boat (a literal immersion into her fear) to retrieve the keys, resolves the plot through internal psychological triumph rather than external ingenuity.
Title: Open Water 2: Adrift Year: 2006 (Released theatrically in some regions as Adrift) Director: Hans Horn Starring: Susan May Pratt, Richard Speight Jr., Niklaus Lange, Ali Hillis, Cameron Richardson, Eric Dane
Note: Despite the number "2" in the title, this film has no narrative connection to Chris Kentis’s 2003 film Open Water. Think of it as a spiritual successor rather than a sequel.
Director Hans Horn wisely focuses on two forms of horror: