Asudahlah.com Indonesia

Programming, tutorials, mechatronics, operating systems, dan artikel teknologi lainnya.

Membuat kalkulator IP Address menggunakan java netbeans 8

Tidak ada komentar

Tutorial kali ini adalah video tutorial, berikut hanya saya lampirkan source code yang digunakan dalam tutorial ini. Untuk step by step nya, silahkan anda stream di youtube (karena lumayan agak panjang).
int prefix = Integer.valueOf(mask.getText());
int pos = prefix / 8; //important octet position
int rem = prefix % 8; //binary digit of importan octet

String binIpFull = "";
String subBinary = "";
String subBinaryFull = "";
String binnetidFull = "";
String binbcidFull = "";
String netmaskFull = "";
String netidFull = "";
String bcidFull = "";

//loop to generate binary mask from octet pos
for (int i = 1; i & lt; = 8; i++) {
 if (i & lt; = rem) {
  subBinary += "1";
 } else {
  subBinary += "0";
 }
}

//netmask (integer version of subBinary
int netmask = Integer.parseInt(String.valueOf(subBinary), 2);

//ip octets array
int[] oct = {
 Integer.valueOf(oct1.getText()),
 Integer.valueOf(oct2.getText()),
 Integer.valueOf(oct3.getText()),
 Integer.valueOf(oct4.getText())
};

//binary of important octet
String binOct = String.format("%8s", Integer.toBinaryString(oct[pos])).replace(' ', '0');

String binNetId = "";
String binBcId = "";

for (int i = 0; i & lt; 8; i++) {
 String binPointer = subBinary.substring(i, i + 1);
 if (binPointer.equals("1")) {
  binNetId += binOct.substring(i, i + 1);
  binBcId += binOct.substring(i, i + 1);
 } else {
  binNetId += "0";
  binBcId += "1";
 }
}

//loop to generate display-ready strings
for (int i = 0; i & lt; = 3; i++) {
 binIpFull += String.format("%8s", Integer.toBinaryString(oct[i])).replace(' ', '0');
 if (i < pos) { = ""
  subbinaryfull += "11111111"; = ""
  netmaskfull = "" += "255"
  binnetidfull = ""
  ','
  0 ');="" binbcidfull="" netidfull="" bcidfull="" ="" }else="" if(i="">pos){
  subBinaryFull += "00000000";
  netmaskFull += "0";
  binnetidFull += "00000000";
  binbcidFull += "00000000";
  netidFull += "0";
  bcidFull += "1";
 } else {
  subBinaryFull += subBinary;
  netmaskFull += String.valueOf(netmask);
  binnetidFull += binNetId;
  binbcidFull += binBcId;
  netidFull += Integer.parseInt(String.valueOf(binNetId), 2);
  bcidFull += Integer.parseInt(String.valueOf(binBcId), 2);
 }
 if (i != 3) {
  subBinaryFull += ".";
  netmaskFull += ".";
  binnetidFull += ".";
  binbcidFull += ".";
  netidFull += ".";
  bcidFull += ".";
  binIpFull += ".";
 }
}
subBinLabel.setText(subBinaryFull);
netMaskLabel.setText(netmaskFull);
netBinLabel.setText(binnetidFull);
bcBinLabel.setText(binbcidFull);
netIdLabel.setText(netidFull);
bcIdLabel.setText(bcidFull);
ipBinLabel.setText(binIpFull);


Videonya bisa anda saksikan disini:



Tidak ada komentar :

Posting Komentar

Pengolahan citra dengan html5 dan javascript bagian 3: Grayscale,Binary,Invert

Tidak ada komentar
Tutorial ini merupakan lanjutan dari seri tutorial:

Pada tutorial kali ini, kita akan langsung menggunakan library untuk mempermudah proses pengolahan citra yaitu library html5-CIML. Library tersebut bisa anda download di:

https://github.com/cybermujahidz/html5-CIML

Setelah file javascript(js) anda download, simpan kedalam folder yang sama dengan file html. Kemudian copy paste script berikut :

<title>untitled</title>

<meta http-equiv="content-type" content="text/html;charset=utf-8">

<meta name="generator" content="Geany 1.23.1">

<script src="CIML.js" type="text/javascript"></script>

<img id="sumber" src="jeruk.jpg" style="display:none;">

<canvas id="jeruk"></canvas>

<canvas id="grayscale"></canvas>

<canvas id="binary"></canvas>

<canvas id="invert"></canvas>

<script type="text/javascript">

//ambil gambar sumber. ambil tinggi, lebar;

var sumberimg=document.getElementById('sumber');

var lebarSumber=sumberimg.width;

var tinggiSumber=sumberimg.height;

//ambil canvas jeruk, atur tinggi lebar

var jeruk=document.getElementById('jeruk');

jeruk.width=lebarSumber;

jeruk.height=tinggiSumber;


//gambar sumber ke kanvas jeruk

var cJeruk=jeruk.getContext('2d');

cJeruk.drawImage(sumberimg,0,0,lebarSumber,tinggiSumber);

//atur ukuran kanvas grayscale

var grayscale=document.getElementById('grayscale');

grayscale.width=lebarSumber;

grayscale.height=tinggiSumber;

//buat image baru dengan library CIML

var iGrayscale=new CIML('jeruk',0,0,lebarSumber,tinggiSumber);

//ubah ke grayscale

iGrayscale.grayscale();

//render ke canvas id=grayscale

iGrayscale.render('grayscale',0,0);

//atur ukuran kanvas Binary

var Binary=document.getElementById('binary');

Binary.width=lebarSumber;

Binary.height=tinggiSumber;

//buat image baru

var iBinary=new CIML('jeruk',0,0,lebarSumber,tinggiSumber);

//ubah ke binary

iBinary.binary(128);

//128 adalah nilai threshold;

//render ke kanvas binary

iBinary.render('binary',0,0);

//atur ukuran kanvas invert

var invert=document.getElementById('invert');

invert.width=lebarSumber;

invert.height=tinggiSumber;

</script>
Hasilnya akan tampak seperti berikut:


Sorry, this picture is missing after migration.


Untuk penjelasan yang lebih detail, bisa anda simak dalam video ini:
https://youtu.be/vWeT4HOiHkU

Resource :

Tidak ada komentar :

Posting Komentar