Skip to content
Permalink
Browse files

Set calibration settings by simulating manually inputting values on w…

…ebpage
  • Loading branch information...
wilbur-shi committed Aug 5, 2016
1 parent 4a7139a commit f7ce996341fd9489c238ab60080bf5646e786b64
Showing with 28 additions and 18 deletions.
  1. +28 −18 js/photonic3d.js
@@ -5,45 +5,51 @@ function findPythagoreanC(a, b) {
return Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
}

function setPrinterCallibrationSettings(printer) {
// console.log(printer);
function setPrinterCalibrationSettings(printer) {
var slicingProfile = printer.configuration.slicingProfile;
var monitorDriverConfig = printer.configuration.machineConfig.MonitorDriverConfig;
var dotsPermmX = slicingProfile.DotsPermmX;
var dotsPermmY = slicingProfile.DotsPermmY;
var dotsPermmXYAverage = (dotsPermmX + dotsPermmY) / 2;
if (Math.abs(dotsPermmX - dotsrPermmY) >= 0.1) {
return true;
}
// if (Math.abs(dotsPermmX - dotsPermmY) >= 0.1) {
// return true;
// }
var dotsPermmDiagonal = findPythagoreanC(dotsPermmXYAverage, dotsPermmXYAverage);
var diagonalNumPixels = findPythagoreanC(monitorDriverConfig.DLP_X_Res, monitorDriverConfig.DLP_Y_Res);
var diagonalMM = diagonalNumPixels / dotsPermmDiagonal;
var diagonalMM = Math.round(diagonalNumPixels / dotsPermmDiagonal);
var buildVolXmm = Math.round(monitorDriverConfig.DLP_X_Res / dotsPermmXYAverage);
var buildVolYmm = Math.round(monitorDriverConfig.DLP_Y_Res / dotsPermmXYAverage);

// $buildVolumeX.val(buildVolXmm);
// $buildVolumeY.val(buildVolYmm);
// updateBuildVolumeSettings();

/* This is part of updateBuildVolumeSettings() from main.js. I only copied
the necessary code that won't result in geometry error */
var unit = $('#build-volume input[type=radio]:checked').val();

settings.set('buildVolume', {
size: {
x: buildVolXmm,
y: buildVolYmm,
z: $buildVolumeZ.val()
},
unit: unit
unit: 'mm'
});
viewer3d.setBuildVolume(settings.get('buildVolume'));
viewer3d.render();
updateBuildVolumeUI();


$('#screen-diagonal-unit-in').prop('checked', false);
$('#screen-diagonal-unit-mm').prop('checked', true);
$screenDiagonalSize.val(diagonalMM);

// After manually checking the mm unit, set the values then update UI
// settings.set('screen', {
// width : $screenWidth.val(),
// height : $screenHeight.val(),
// diagonal: {
// size: diagonalMM,
// unit: 'mm'
// }
// });
// updateScreenUI();

$screenDiagonalSize.val(100);
updateScreenSettings();

// No error occurred so return false
@@ -54,15 +60,19 @@ function setPrinterCallibrationSettings(printer) {
function initializeValues() {
$slicerSpeedYes[0].checked = true;
$slicerSpeedNo[0].checked = false;
$slicerSpeedDelay.val = 0;
$settings.set('#slicer.panel.collapsed', true);
$slicerSpeedDelay.val(0);

// Update global javascript object with slicer settings
settings.set('slicer.speed', $slicerSpeedYes[0].checked);
settings.set('slicer.speedDelay', $slicerSpeedDelay.val());

settings.set('#slicer.panel.collapsed', true);
$slicerBody.collapse('hide');

updateSlicerSettings();
var XYerr = false;
var printer = $.get( "/services/printers/getFirstAvailablePrinter", function( data ) {
if (data !== null && data !== undefined) {
XYerr = setPrinterCallibrationSettings(data);
XYerr = setPrinterCalibrationSettings(data);
}
});

0 comments on commit f7ce996

Please sign in to comment.
You can’t perform that action at this time.