How to draw PCD instead of reading from a file

Hello!
I would like to draw transformed data from source.
I can draw the PCD just by reading from file,
but can’t draw directly transformed data.

Any Idea please.

=========================================================
#Input Point Cloud
fpass = “E:\ICP\Question/”
fname_source = “sample.asc”
source = read_point_cloud(fpass + fname_source, format=‘xyz’)

#Source data
data_source = np.genfromtxt(fpass + fname_source, dtype = None, delimiter= " ")
print(data_source)
x_source = data_source[:, 0]
y_source = data_source[:, 1]
z_source = data_source[:, 2]
xyz_source = np.array([x_source, y_source, z_source, 1])

#XYZ Rotation in degrees
alpha_deg = 0; beta_deg = 0; gamma_deg =0;

#Convert to radians
alpha_rad = alpha_deg * math.pi/180
beta_rad = beta_deg * math.pi/180
gamma_rad = gamma_deg * math.pi/180

#XYZ Translation
TXx = 0; TXy = 0; TXz = 0
TYx = 0; TYy = 0; TYz = 0
TZx = 0; TZy = 0; TZz = 0

scale = 1

#X Transform matrix
mx_x = np.array([[1, 0, 0, TXx],
[0, math.cos(alpha_rad), -math.sin(alpha_rad), TXy],
[0, math.sin(alpha_rad), math.cos(alpha_rad), TXz],
[0, 0, 0, 1]])

#Y Transform matrix
mx_y = np.array([[math.cos(beta_rad), 0, math.sin(beta_rad), TYx],
[0, 1, 0 , TYy],
[-math.sin(beta_rad), 0, math.cos(beta_rad), TYz],
[0, 0, 0, 1]])

#Z Transform matrix
mx_z = np.array([[math.cos(gamma_rad), -math.sin(gamma_rad), 0, TZx],
[math.sin(gamma_rad), math.cos(gamma_rad), 0 , TZy],
[0, 0, 1, TZz],
[0, 0, 0, 1]])

#Source matrix
org_xyz = np.array([x_source, y_source, z_source, 1])

#XYZ Transform
rot_x = np.dot(mx_x, org_xyz)
rot_y = np.dot(mx_y, rot_x)
rot_z = np.dot(mx_z, rot_y)
rot_result_array = rot_z * scale

rot_result = np.vstack((rot_result_array[0], rot_result_array[1], rot_result_array[2]))
#target = rot_result.transpose()

#Save transformed data
np.savetxt(fpass + “rot_result.asc”, rot_result.transpose(), delimiter = " ")

#Read transformed data
fname_target = “rot_result.asc”
target = read_point_cloud(fpass + fname_target, format=‘xyz’)
print(target)

#Draw source and transformed data
o3d.visualization.draw_geometries([source, target], “Original and Transformation”, 640, 480)